属性 选择器查询中的 属性 重新声明是否总是等同于最后一个 属性 声明?
Is property redeclaration in CSS selector query always equivalent to just the very last property declaration?
我正在研究现代 CSS 预处理器的行为,并注意到 SASS 和 LESS 在同一查询中遇到 属性 重新声明时实际上什么都不做,例如这段代码(在上述两种预处理器中均有效):
.some {
color: red;
color: yellow;
color: maroon;
}
将以完全相同的方式翻译,没有任何变化,也就是说,我们将再次得到:
.some {
color: red;
color: yellow;
color: maroon;
}
我的问题是 - 是否有任何 CSS 属性可以在同一个选择器查询中声明 N 次,而这个声明的效果不等同于只留下最后一个声明(在这种情况 - color: maroon
).
请记住,我不一定要问为什么预处理器是这样设计的。如果有这样的属性,那将是答案。如果没有,则出于其他一些原因可能有意义,例如,超出此问题范围的性能。
我想,如果您要求 属性 被某些浏览器视为无效。
例如:
.some {
background: background: rgb(61,217,0);
background: linear-gradient(328deg, rgba(61,217,0,1) 0%, rgba(12,242,187,1) 100%);
}
此外,如果您使用的是抓取的图像,您可以使用背景颜色显示它,as shown there 或此处:
.some {
background: var(--fallback-color) url('https://possibly.dead.com/but/pretty_img');
}
因此,如果 link 已死,背景颜色仍会显示。
我正在研究现代 CSS 预处理器的行为,并注意到 SASS 和 LESS 在同一查询中遇到 属性 重新声明时实际上什么都不做,例如这段代码(在上述两种预处理器中均有效):
.some {
color: red;
color: yellow;
color: maroon;
}
将以完全相同的方式翻译,没有任何变化,也就是说,我们将再次得到:
.some {
color: red;
color: yellow;
color: maroon;
}
我的问题是 - 是否有任何 CSS 属性可以在同一个选择器查询中声明 N 次,而这个声明的效果不等同于只留下最后一个声明(在这种情况 - color: maroon
).
请记住,我不一定要问为什么预处理器是这样设计的。如果有这样的属性,那将是答案。如果没有,则出于其他一些原因可能有意义,例如,超出此问题范围的性能。
我想,如果您要求 属性 被某些浏览器视为无效。 例如:
.some {
background: background: rgb(61,217,0);
background: linear-gradient(328deg, rgba(61,217,0,1) 0%, rgba(12,242,187,1) 100%);
}
此外,如果您使用的是抓取的图像,您可以使用背景颜色显示它,as shown there 或此处:
.some {
background: var(--fallback-color) url('https://possibly.dead.com/but/pretty_img');
}
因此,如果 link 已死,背景颜色仍会显示。