p::first-line {
text-transform: uppercase;
}
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
如你所见,第一行还没有转换成大写。我做错了什么?
我使用的是OS X 10.11.6和Safari 9.1.2(11601.7.7)。
4条答案
按热度按时间3zwjbxry1#
你的伪元素工作得很好。您面临的问题是Webkit引擎中一个已知的、10多年前未解决的错误,关于**
::first-line
不接受text-transform
**。这个bug已经被多次报告,但似乎没有任何解决方案。看看我发现的三个问题:
需要说明的是,**
::first-line
**接受的属性为:有关**
::first-line
**的详细信息,请参阅this page。注意:Chromium上的Bug 129669已于2017年9月26日修复。
vptzau2j2#
显然
::first-line
和text-transform
组合在webkit浏览器中不起作用。在Firefox中,您的代码运行良好。检查this bug。wljmcqd83#
您可以看到从
::first-line
here中排除的属性。其中包括kx1ctssn4#
我也有同样的问题。* * 原来我把
p
元素做成了{display: inline;}
:**但我忘了。
所以后来当我尝试下面的伪类时:
不管我做了什么,伪类就是不起作用。
然后我想我可能对
p
元素做了些什么。我回去检查了一下,发现我把
p
元素变成了{display: inline;}
。* * 我删除了display: inline;
,然后伪类开始工作**