规则结构
每个规则都有两个基本部分:选择器和声明块。声明块由一个或多个声明组成,每个声明则是一个属性—值对。每个样式表由一系列规则组成。
h1{color: red;background: yellow;}
选择器分类
【0】通配选择器
星号*代表通配选择器,可以与任何元素匹配
*{color: red;}
【1】元素选择器
文档的元素是最基本的选择器
html{color: black;}p{color: gray;}h2{color: silver;}
【2】类选择器(一组元素)
.div{color: red;}
【2.1】多类选择器
.div1.div2{color: red;}
【2.2】结合元素的类选择器
p.div{color: red;}
【3】ID选择器(一个元素)
#test{color: red;}
[注意]在实际中,浏览器并不会检查ID的唯一性,设置多个ID,可以为这些具有相同ID的元素应用相同样式,但在编写DOM脚本时只能识别该id的第一个元素。
【4】属性选择器(IE6-不支持)
根据元素的属性及属性值来选择元素
【4.1】简单属性选择器
h1[class]{color: red;}img[alt]{color: red;}a[href][title]{color: red;}#div[class]{color: red;}.box[id]{color: red;}[class]{color: red;}
【4.2】具体属性选择器
[class="test box"]{color: red;}
[注意]class里面的值以及顺序必须完全相同,并且不可多空格或者少空格
[id="tox"]{color: red;}
[注意]ID选择器和指定id属性的属性选择器并不是一回事,主要在于优先级不同。
a[href="http://www.baidu.com"][title="baidu"] {color: red;}
【4.3】部分属性选择器
[class ~="b"] 选择class属性值在用空格分隔的词列表中包含词语"b"的所有元素 [class ^="b"] 选择class属性值以"b"开头的所有元素[class $="b"] 选择class属性值以"b"结尾的所有元素[class *="b"] 选择class属性值包含"b"的所有元素 [class |="b"] 选择class属性值等于b或以b-开头的所有元素
【5】分组选择器
将要分组的选择器放在规则左边,并用逗号隔开
h1,p{color: red;}
【6】后代选择器
ul li{color: red;}div p, ul li{color: red;}
【6.1】子元素选择器(IE6-不支持)
ul > li{color: red;}
【7】相邻兄弟元素选择器(IE6-不支持)
div + p{color: red;}
[注意]两个元素之间的文本内容不会影响相邻兄弟结合符起作用
【8】伪类选择器
伪类顺序:link-visited-focus-hover-active
【8.1】静态伪类(只应用于超链接)
:link 未访问:visited 已访问a:link{color: red;}a:visited{color: green;}
【8.2】动态伪类(可应用于任何元素)
:focus 拥有焦点(IE7-不支持):hover 鼠标停留(IE6-不支持给<a>以外的其他元素设置伪类):active 正被点击(IE7-不支持给<a>以外的其他元素设置伪类)
【8.3】:first-child(属于静态伪类)(IE6-不支持)
p:first-child 代表的并不是<p>的第一个子元素,而是<p>元素是某元素的第一个子元素p > i:first-child 匹配所有<p>元素中的第一个<i>元素p:first-child i 匹配所有作为第一个子元素的<p>元素中的所有<i>元素
【8.4】:lang 相当于|=属性选择器(IE7-不支持)
p:lang(en) 匹配语言为"en"的<p>
【8.5】伪类的结合
a:visited:hover:first-child{color: black;}
[注意]顺序无关
【9】伪元素选择器
【9.1】:first-letter 设置首字母样式(只能用于块级元素)(IE6-不支持)
p:first-letter{color: red;}
【9.2】:first-line 设置首行样式(只能用于块级元素)(IE6-不支持)
p:first-line{color: red;}
【9.3】:before 在元素内容前面插入内容(IE7-不支持)
p:before{content:"text"}
【9.4】:after 在元素内容后面插入内容(IE7-不支持)
p:after{content:"text"}
[注意]所有伪元素都必须放在出现该伪元素的选择器的最后面。因此,如果写成 p:before em 就是不合法的

公众号网页更新缓存,这玩意儿,说简单也简单,说复杂也够你喝一壶的。你辛辛苦苦更新了公众号文章,结果用户打开还是老版本,这滋味,谁受得了?这篇文章,咱就来扒一扒这背后的弯弯绕绕,以及如何优雅地解决这个问题。读完之后,你就能轻松应对各种缓存难题,让你的用户始终体验到最新鲜的内容。先说点基础的。网页缓存,说白了就是浏览器或者服务器为了提高访问速度,把一些静态资源(比如图片、CSS、JS)或者页面内容存储起来。下次访问时,直接从缓存里取,不用再重新下载,速度自然快。但这玩意儿,也是个双刃剑。新版本上线,

本文讨论了使用HTML5表单验证属性,例如必需的,图案,最小,最大和长度限制,以直接在浏览器中验证用户输入。

本文展示了使用CSS为网页中添加有效的PNG边框。 它认为,与JavaScript或库相比,CSS提供了出色的性能,详细介绍了如何调整边界宽度,样式和颜色以获得微妙或突出的效果

本文讨论了html&lt; datalist&gt;元素,通过提供自动完整建议,改善用户体验并减少错误来增强表格。Character计数:159

本文讨论了HTML&lt; meter&gt;元素,用于在一个范围内显示标量或分数值及其在Web开发中的常见应用。它区分了&lt; meter&gt;从&lt; progress&gt;和前

本文解释了HTML5&lt; time&gt;语义日期/时间表示的元素。 它强调了DateTime属性对机器可读性(ISO 8601格式)的重要性,并在人类可读文本旁边,增强Accessibilit

本文讨论了HTML&lt; Progress&gt;元素,其目的,样式和与&lt; meter&gt;元素。主要重点是使用&lt; progress&gt;为了完成任务和LT;仪表&gt;对于stati


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

Dreamweaver Mac版
视觉化网页开发工具

Atom编辑器mac版下载
最流行的的开源编辑器

禅工作室 13.0.1
功能强大的PHP集成开发环境