我无法在此示例中仅定位第一个字母:http: //jsfiddle.net/gB94x/
显然,“阅读更多”也不应该有首字下沉。
HTML 不能更改,它是固定模板的一部分。
谢谢!
.od_article>p
引用所有p
直接子级的标签,这.od_article
就是你的问题。你只想要第一个p
标签。更改.od_article>p:first-letter
为.od_article>p:first-of-type:first-letter
如下更新的小提琴。
更新:
:first-of-type
不幸的是,我不相信 IE7 支持。我不确定它是否支持:first-child
,但作为参考,:first-child
如果它应用的元素是其父元素的第一个子元素,则匹配。
我想不出一个解决方法,但查看 HTML 时,p
您想要更改其第一个字母的有 class CaptionPic1
。如果第一段总是有这个类,就用那个,所以.CaptionPic1:first-letter
.
您的选择器:
.od_article>p:first-letter
正在尝试将样式应用于其父母拥有班级的每个 孩子的第一个字母。p
od_article
您可以使用它来获取第一个p
元素:
.od_article>p:first-of-type:first-letter
或者,如果您需要支持像 IE7和IE8:first-of-type
这样的旧浏览器,它们不理解 CSS3 伪类(例如使用这样的兄弟选择器:h1
p
h1
:first-child
.od_article>h1:first-child+p:first-letter