css3选择器总结[通俗易懂]

css3选择器总结[通俗易懂]三大特性继承性:子标签继承父标签样式,默认优先级最低。有继承性:文本相关字体样式、粗细、大小、颜色、类型等无继承性:盒子模型相关边框、背景等层叠性:相同标签继承和定义的样式累加到一起互不冲突。优先级:离标签越近的选择器优先级越高,所以相同权重的样式后者才生效;内联样式表>头部样式表>导入样式表。权重权重为0000:通用选择器*{}组选择器h1,h2,

大家好,又见面了,我是你们的朋友全栈君。

三大特性

继承性:子标签继承父标签样式,默认优先级最低。
有继承性:文本相关字体样式、粗细、大小、颜色、类型等
无继承性:盒子模型相关边框、背景等
层叠性:相同标签继承和定义的样式累加到一起互不冲突。
优先级:离标签越近的选择器优先级越高,所以相同权重的样式后者才生效;内联样式表>头部样式表>导入样式表。

权重

权重为0000:
通用选择器* {}

组选择器h1, h2, p, em, img {}

后代选择器h1 em{}

子代选择器table>tbody>tr{}

分类选择器div.top,header.main{}

+相邻兄弟选择器: div.s+p{} 只能选择后面的

~通用兄弟选择器: div.s~p{} 只能选择后面的

权重为0001:

标签选择器h3 em {}

:first-letter每段首字符(css2不兼容,css3兼容)

:first-line每行首字符

当:first-letter和:first-line矛盾时优先:first-letter

:before

:after

:content

::selection用户在页面中选中部分(只能改颜色和背景颜色)

权重0010:

类(class)选择器 .special {}

伪类选择器:  :link   :visited   :hover   :active   :focus

元素状态伪类:   :enabled   :disabled   :checked   :focus

属性选择器:[属性]   元素[属性][属性]   元素[属性=“value”]

p=[class^=”value”] p=[class*=”value”] p=[class$=”value”]

元素[class~=”value”]匹配class=”c1 c2 c3 c4”众多值中某一个

目标伪类:img:target{}匹配id或name的value,写在跳转目标的标签后

:target{} <a href=”#hehe”>点此<a>    <a name=”hehe”>跳此</a>   <img id=”hehe”>跳此</img>

结构伪类:(父元素下的子元素中,必须先选中父元素)

:first-child    :last-child    :nth-child(n)

:nth-child(even|2n)选择偶数子元素 :nth-child(odd|2n-1)//奇数

:empty 空格换行不算空,匹配同级元素中一个子元素都没有的元素

:only-child匹配同级元素中只有一个子元素的元素

否定伪类::not()

权重0100:

ID选择器 #banner

权重1000:

!important p{color:blue !important;}

综合实例

<!DOCTYPE html>
<html>
<head>
<title></title>
<meta charset="UTF-8">
<style>
	#blogs.blogs>#blog.blog>p{color:yellow;}/*权重:100+10+100+10+1*/
	span{color:blue !important;}/*权重:1+1000*/
	#blogs span{color:green;}/*权重:100+1*/
	.blogs h1{background-color:blue;}/*权重:10+1*/
	.blogs .blog h1{background-color:yellow;}/*权重:10+10+1*/
	h1{background-color:gray;}/*权重:1*/
</style>
</head>
<body>
	<div id="blogs" class="blogs">
		<div id="blog" class="blog">
			<!-- 权重:内联最高 -->
			<h1 style="background-color:gray;">第一篇博客</h1>
			<p><span>this</span> is my first blog.</p>
		</div>
	</div>
</body>
</html>


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157449.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 那些错过的人和事,已成回忆

    哪些曾经没有做的事情,你现在还想做吗?你现在还能做吗?最近的一些梦,让我思考哪些我当时有机会做,但是最后没有做的事情!现在回忆起来,略有遗憾,也在感慨时间的力量,推着我一直向前,我已经不再是过去的那个我了。我记得小的时候,那会上小学,在学校外面的有个老奶奶开的小卖铺,那个小卖铺里面是用木头搭建的房子,屋顶上面用的是茅草铺的。小卖铺里面卖着一种一毛钱一片的辣条(片),本来这种辣条(片…

    2022年2月27日
    42
  • kettle教程(1) 简单入门、kettle简单插入与更新。打开kettle

    kettle教程(1) 简单入门、kettle简单插入与更新。打开kettle本文要点:Kettle的建立数据库连接、使用kettle进行简单的全量对比插入更新:kettle会自动对比用户设置的对比字段,若目标表不存在该字段,则新插入该条记录。若存在,则更新。 Kettle简介:Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,数据抽取高效稳定。Kettle中文名称叫水壶,该项目的主程序员MATT希望把各种数…

    2022年5月10日
    33
  • linux安装lib包_linux生成静态库

    linux安装lib包_linux生成静态库前几天手里的智能锁项目,收到产品的建议(命令)说,就是人脸识别成功的时候,不要只显示摄像头捕捉到的图像,要弄个酷炫一点的背景,背景里图片中间有个圆圈,人脸就放到圆圈里也就是类似这样。。当然,这是我思考了好几个小时的结果,开始想不明白要怎么实现,其实想通了也很简单,三个步骤A把背景图像的RGB读出来out_bufB把摄像头采集到的图像读出来(分辨率和背…

    2025年6月19日
    0
  • win10 专业工作站 激活码_通用破解码

    win10 专业工作站 激活码_通用破解码,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月16日
    205
  • 通过java生成精确到秒的时间戳

    通过java生成精确到秒的时间戳3、Java中的两种获取精确到秒的时间戳的方法:Java中的时间戳的毫秒主要通过最后的三位来进行计量的,我们通过两种不同的方式将最后三位去掉。

    2022年6月11日
    72
  • pytest的使用_java中方法的调用

    pytest的使用_java中方法的调用Pytest执行用例规则Pytest在命令行中支持多种方式来运行和选择测试用例1.对某个目录下所有的用例pytest2.对模块中进行测试pytesttest_mod.py3.对文件夹进行

    2022年7月29日
    6

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号