CSS Houdini 这个看起来像拼音的单词和 CSS 有什么联系?

5,698次阅读
没有评论

共计 690 个字符,预计需要花费 2 分钟才能阅读完成。

今天第一次看到 CSS Houdini 这个词语觉得有点怪,还以为是什么的中文拼音,但好像又和 CSS 有些关联。结果一查,还真和 CSS 密切相关。MDN 中的解释是:

CSS Houdini 是 CSS 引擎暴露对外的一组 API,由此可使得开发者很轻松地为 CSS 创建拓展。这些拓展可用于填充浏览器中尚不可用的功能,尝试新的布局方式,或添加创意边框或其他效果。

CSS Houdini 这个看起来像拼音的单词和 CSS 有什么联系?

到目前为止,JS 只能改变浏览器渲染过程中的 DOM 和 CSSOM,而无法去改变后面 layout、painting 和 composite 的进程。这样当 CSS 新技术出现的时候,开发者就只能眼睁睁的看着老浏览器不支持而无能为力了,因为浏览器并没有提供相应的接口让开发人员去进行 polyfills。有了 CSS Houdini 就能把整个渲染过程都打通,让 JS 参与进来。我们就可以放心地使用新的 CSS 技术而不用担心浏览器的兼容问题。

比如可以增加带有默认值的高级自定义属性。

:root {--background-color: blue;}

.box {background-color: var(--background-color);
}

以上我们就是增加了一个名为 --background-color 的属性,并且给了它默认的颜色值。然后我们就可以在其他地方来引用值以属性的方式。

@property --background-color {syntax: '';
  inherits: false;
  initial-value: blue;
}

为了防止别人滥用这个只属于颜色的属性,我们可以通过 @property 给它增加类型约束。

Houdini.how 这个网站收集了 Houdini 的使用案例。

    正文完
     0
    Yojack
    版权声明:本篇文章由 Yojack 于1970-01-01发表,共计690字。
    转载说明:
    1 本网站名称:优杰开发笔记
    2 本站永久网址:https://yojack.cn
    3 本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
    4 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
    5 本站所有内容均可转载及分享, 但请注明出处
    6 我们始终尊重原创作者的版权,所有文章在发布时,均尽可能注明出处与作者。
    7 站长邮箱:laylwenl@gmail.com
    评论(没有评论)