CSS - 在没有 ::before 和 ::after 的情况下使用 attr() 函数

CSS - Using attr() function without ::before and ::after

我想在某些范围内使用attr()函数,但我不会使用 ::after 和 ::before 伪元素。例如:

<span size="36">Text</span>
<style>
    span[size]{
        font-size: attr(size pt);
    }
</style>

是否可以使用 CSS 或 SASS 或 LESS 来实现?

attr() return 是 string,因此,截至今天,它唯一可以实际工作的 属性 是 content 属性.

在您的情况下,它将 return 字符串 36,因此不会被正确应用。

它的语法有一个实验性的第二个参数,<type-or-unit>,其中一个应该能够选择 returned 值的数据类型,尽管还没有浏览器支持它。


旁注,SASS 和 LESS 都将 编译成 CSS 并且无法将 CSS 扩展成 CSS 还做不到。