我有一个包含许多<p>
元素的<div>
,需要只对每个<div>
中的第一个<p>
应用一些样式,并使用特定的类(cnt)。
- 请注意,这个问题可能与SO上的其他问题类似,但我需要的角色应该只适用于类
cnt
,这使得它有所不同。
//I use YUI 3 Reset and Grid:
<link href="http://yui.yahooapis.com/3.4.0/build/cssfonts/fonts.css" rel="stylesheet" type="text/css" />
<link href="http://yui.yahooapis.com/3.4.0/build/cssgrids/grids.css" rel="stylesheet" type="text/css" />
<div class="cnt">
<p>Number 1</p>
<p>Number 2</p>
<p>Number 3</p>
</div>
// I'm using this class without success!"
.cnt p:first-child
{
background-color:Red;
}
// Other classes could create some conflict
.cnt p
{
margin: 10px 0px 10px 0px;
}
.cnt h2, .cnt h3, .cnt h4, .cnt h5, .cnt h6
{
font-size: 16px;
font-weight: 700;
}
.cnt ul, .cnt ol
{
margin: 10px 0px 10px 30px;
}
.cnt ul > li
{
list-style-type: disc;
}
.cnt ol > li
{
list-style-type: decimal;
}
.cnt strong
{
font-weight:700;
}
.cnt em
{
font-style:italic;
}
.cnt hr
{
border:0px;
height:1px;
background-color:#ddddda;
margin:10px 0px 10px 0px;
}
.cnt del
{
text-decoration:line-through;
color:Red;
}
.cnt blockquote
{ margin: 10px;
padding: 10px 10px;
border: 1px dashed #E6E6E6;
}
.cnt blockquote p
{
margin: 0;
}
PS:我需要它在CSS 2
(无论是少CSS3:第一类型工程伟大)
4条答案
按热度按时间ui7jx7zq1#
你的榜样应该很管用
Demo
交替法
Live Demo
尝试使用
first-of-type
选择器。它是一个CSS3选择器,但不能在IE8上工作。
tvokkenx2#
人们总是忘记的一件事是相邻选择器,在IE7+中工作(在某种程度上),试试这个:
HTML
CSS
http://jsfiddle.net/andresilich/AHHrF/
wixjitnu3#
下面是一个使用不同方法的例子,没有使用:first-child。
http://jsfiddle.net/chricholson/dp3vK/6/
它涉及到为所有p标签设置样式(以获得通用样式),然后只有p标签在p标签之后的地方才会影响更多的样式。您可以利用这一点,将所有p标记设置为第一个标记的样式,然后覆盖其他标记
juzqafwq4#
去你的css
.cnt p:第一个类型{
给予你想要的风格