gpt4 book ai didi

css - 样式化 'first-line' 内部元素

转载 作者:技术小花猫 更新时间:2023-10-29 11:17:45 25 4
gpt4 key购买 nike

我试图将 CSS 样式放在列表第一行的列表项上,但 Chrome、Firefox 和 Safari 似乎都不接受该样式。

ul:first-line > li {
display: inline;
/* my styles here */
}

我是否忽略了我指定样式的方式,这是对 CSS 实现的疏忽还是故意的 CSS 规范?如果是后者,这背后是否有充分的理由?

JSFiddle:http://jsfiddle.net/e3zzg/

编辑:
请注意,这似乎非常明确,目前无​​法单独使用 CSS 来实现,但从研究的 Angular 和后代来看,我很好奇为什么会这样。如果您阅读 W3C CSS specification on the firstline pseudo-element似乎没有提到内部元素。感谢所有试图提供替代解决方案的人,但除非确实有 CSS 解决方案,否则这里的问题是“为什么”,而不是“如何”或“是否可能”。

最佳答案

这是“为什么”您想做的事无法完成

selectors 3 spec是最新的。以下内容取自于此。

“为什么”是因为 :first-letter 是伪元素,即“假”或“假”元素。它正在生成一个“虚构标签序列”,与其他真实元素相比无法识别。所以你的...

ul:first-line > li 

...遇到与此选择器字符串相同的问题...

ul:before + li

...其中组合器(无论是 > 还是 +)只查看“元素”而不是“伪元素”以进行选择。第二个字符串不以 :before 伪元素之后的 ul 的“第一个”li 为目标。如果它能正常工作,它将以 html 序列中 ul 之后的 li 为目标(当然,在有效的 html 中永远不会有一个布局)。

然而,a selector string similar to the second one above would not work anyway ,因为实际上,上述字符串的形式是无效的,正如 the specifications 中的声明所确认的那样上面写着:

Only one pseudo-element may appear per selector, and if present it must appear after the sequence of simple selectors that represents the subjects of the selector.

换句话说,伪元素只能放在选择器序列中的最后,因为它必须是被赋值的属性的目标由那个选择器。 无效的形式显然会被简单地忽略,就像任何无效的选择器一样。

关于css - 样式化 'first-line' 内部元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17474105/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com