还有一个比较有用的选择器子选择器,即大于符号(>),用于选择指定标签元素的第一代子元素。如右侧代码编辑器中的代码:
.food>li{border:1px solid red}
这行代码会使class名为food下的子元素li(水果、蔬菜)加入红色实线边框。
[html] view plain copy
<style type="text/css">
.food>li{border:1px solid red}/*添加边框样式(粗细为1px, 颜色为红色的实线)*/
</style>
[html] view plain copy
<h1>食物</h1>
<ul class="food">
<li>水果
<ul>
<li>香蕉</li>
<li>苹果</li>
<li>梨</li>
</ul>
</li>
<li>蔬菜
<ul>
<li>白菜</li>
<li>油菜</li>
<li>卷心菜</li>
</ul>
</li>
</ul>
包含(后代)选择器
包含选择器,即加入空格,用于选择指定标签元素下的后辈元素。如右侧代码编辑器中的代码:
.first span{color:red}
这行代码会使第一段文字内容中的“胆小如鼠”字体颜色变为红色。
请注意这个选择器与子选择器的区别,子选择器(child selector)仅是指它的直接后代,或者你可以理解为作用于子元素的第一代后代。而后代选择器是作用于所有子后代元素。后代选择器通过空格来进行选择,而子选择器是通过“>”进行选择。
总结:>作用于元素的第一代后代,空格作用于元素的所有后代。
举例:
.food li{
border:1px solid red/*添加边框样式(粗细为1px, 颜色为红色的实线)*/
}
[html] view plain copy
<ul class="food">
<li>水果
<ul>
<li>香蕉</li>
<li>苹果</li>
<li>梨</li>
</ul>
</li>
<li>蔬菜
<ul>
<li>白菜</li>
<li>油菜</li>
<li>卷心菜</li>
</ul>
</li>
</ul>
1、用css画一个圆形
.disc1{
width: 100px
height: 100px
border:1px solid red
background-color: red
margin:300px 0px 0px 300px
border-radius:100%
float:left
}
2、由于爱心是由两个圆和一个正方形组成的,所以还需要再来一个圆形
.disc2{
width: 100px
height: 100px
border:1px solid red
background-color: red
margin:250px 0px 0px 0px
border-radius:100%
float:left
position: relative
right: 50px
}
3、心型下方就需要做一个正方形
.square{
width: 100px
height: 100px
border:1px solid red
background-color: red
margin: 300px 0px 0px 0px
float: left
position: relative
right: 152px
}
4、做完这些的效果已经基本上出来了,但是还需要调整一下爱心的角度,这时就需要用到css样式中的transform中的rotate属性了。
由于需要把三个div都旋转角度,所以把这三个div放在一个div里面。具体代码如下:
.main{
transform: rotate(45deg)
margin: 300px
}
全部代码如下
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<style type="text/css">
*{
margin: 0px
padding: 0px
}
.main{
transform: rotate(45deg)
margin: 300px
}
.disc1{
width: 100px
height: 100px
border:1px solid red
background-color: red
margin:300px 0px 0px 300px
border-radius:100%
float:left
}
.disc2{
width: 100px
height: 100px
border:1px solid red
background-color: red
margin:250px 0px 0px 0px
border-radius:100%
float:left
position: relative
right: 50px
}
.square{
width: 100px
height: 100px
border:1px solid red
background-color: red
margin: 300px 0px 0px 0px
float: left
position: relative
right: 152px
}
</style>
</head>
<body>
<div class="main">
<div class="disc1"></div>
<div class="disc2"></div>
<div class="square"></div>
</div>
</body>
</html>