综合选择器

后代选择器

后代选择的使用方法:d1 span {}(父代与子代之间用“空格”隔开)

!D<OCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>/*后代选择器*/.d1 span {color: blue;}/*选取class值为d1的标签的后代标签中,类型为span的标签*/</style>
</head>
<body><div class="d1"><span>我是子级span</span><div class="son"><span>我是孙级span</span><div class="d2"><span>我是重孙子span</span></div></div></div>
</body>
</html>

交集选择器

交集选择器的使用方法:

div.di {}:选中class值为di的div标签

em#i1 {}:选中id值为i1的em标签

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>/*选中div,并且这个div的class叫d1*/div.d1 {color: red;}/*选中em,并且这个em的id叫i1*/em#d1 {color:blue;}</style>
</head>
<body><div class="d1">我的名字叫d1,我是一个div</div><h1 class="d1">我的名字也是d1 ,但是我是一个h1</h1><em id="i1">我是em,我的名字也是d1</em><div>我是一个没有名字的div</div>
</body>
</html>

并集选择器

并集选择器的使用方法:

d1,#s1,p,em {}:标签名或class名或id名用“,”隔开。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>.d1,#s1,p,em {color: red;}</style>/*选中所有class名为d1 和 id名为s1 和 标签名为p,em的标签*/
</head>
<body><div class="d1">小和尚下山去化斋</div><p>连言有交代</p><em>山下的沈钰是老虎 </em><span id="s1">2232323</span></body>
</html>

子元素选择器

子元素选择器的使用方法:

fa>em {}:选中id为fa的标签的直系子em标签

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>#fa>em {color: red;}</style>/*选中二级em标签*/
</head>
<body><div id="fa"><em>我是二级em</em><div class="son"><em>我是三级em</em><div><em>我是四级em</em></div></div></div></body>
</html>
序列选择器ul li {}:选择无序列表ol li {}:选择有序列表ul li:first-child{}:选择无序列表的第一个ul li:last-child{}:选择无序列表的最后一个<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>ul li:first-child {color: red;}ul li:last-child {color: blue;}ol li {color:green;}</style>
</head>
<body><ul><li>li1</li><li>li2</li><li>li3</li><li>li4</li><li>li5</li></ul><ol><li>li11</li><li>li22</li><li>li33</li></ol></body>
</html>

兄弟选择器

相邻兄弟选择器:div+p {} 选择同一级且在div之后紧挨div标签的p标签。(两个兄弟标签中间不能有其他标签插入)

普通兄弟选择器:div~p {} 选择同一级且在div之后的p标签。(兄弟标签之间不必紧挨)

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>/*相邻兄弟选择器*//*div + p {color: red;}*//*普通兄弟选择器*/div ~ p {color: red;}/*p + p {color: blue;}*/</style>
</head>
<body><div>我是div</div><p>我是p标签</p><p>我是第二个p标签</p>
</body>
</html>

css的继承性

父元素的某些css属性会被子元素无条件的继承过去。

关于文字的css属性都可被继承:color,text-,line-,font-。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>.d1 {color: red;}</style>
</head>
<body><div class="d1"><span>hello,world</span></div>
</body>
</html>
<!-- 子标签span会继承父标签div的color属性,所以span标签内的文字颜色为红色 -->

css的层叠性

层叠能够解决css冲突的问题,通过比较权重的方式。

选择器权重大小:!important>id > class > html (数量相同比较下一个)

示例1:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>/*id  class html */#box1 .hezi2 p {                    /* 1   1   1*/color: red;}div div #box3 p {                   /*1  0  3*/ color: green;}div.hezi1 div.hezi2 div.hezi3 p {   /*0 3 4 */ color: blue;}</style>
</head>
<body><div class="hezi1" id="box1"><div class="hezi2" id="box2"><div class="hezi3" id="box3"><p>文字颜色</p></div></div></div>
</body>
</html>
<!-- 全部选中p,比较权重,第一个权重最大,故遵从第一个css,文字为红色 -->

示例2:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>#box1 .hezi2 p {color: red;}#box2 .hezi3 p {color: blue;}</style>
</head>
<body><div class="hezi1" id="box1"><div class="hezi2" id="box2"><div class="hezi3" id="box3"><p>文字颜色</p></div></div></div>
</body>
</html>

示例3:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>#hezi1 #hezi2 #hezi3 {color: purple;}div.box div.box div.box {color: green;}#hezi1 #hezi2 {color: red;}#hezi3 {color: blue;}</style>
</head>
<body><div class="box" id="hezi1"><div class="box" id="hezi2"><div class="box" id="hezi3"><p>猜猜我是什么颜色?</p></div></div></div>
</body>
</html>
<!-- 都未选中,比较远近,遵从最接近的,相同远近,再比较权重,故文字颜色为紫色 -->

示例4:

!important 的作用

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>.d1 {color: red;font-size: 20px;}#test {color: blue;font-size: 10px;}div {color: green !important;font-size: 100px;}</style>
</head>
<body><div class="d1" id="test">hello,world</div>
</body>
</html>
<1-- !important能够把“单独属性”的权重变为无限大,尽量少用 -->

块级元素和行内元素

块级元素和行内元素的区别

行内元素不能够设置宽度和高度,行内元素的宽度和高度是标签内容的宽度和高度;块级元素可以设置宽度和高度。
块级元素会独占一行,而行内元素却不能独占一行,只能和其他的行内元素共用一行。
如果块级元素不设置宽度,那么块级元素会自动占满父元素的全部宽度。
目前所知道的行内元素和块级元素有:

块级元素和行内元素之间的转换

通过display属性,inline把块级元素变成行内元素,block把行内元素变成块级元素。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title><style>.d0 {width: 300px;height: 300px;background-color: red; display: inline; /*把块级元素变成了行内元素*/ }.s1 {width: 300px;height: 300px;background-color: blue;display: block;/*将行内元素变成块级元素*/}</style>
</head><body><div class="d0">Hello,Div</div><span class="s1">hello,Span</span>
</body>
</html>

而display的inline-block值可以变成行内块元素。

两个行内块元素之间会有一条约3px的缝,可以使用float属性去掉。

    <!DOCTYPE html><html lang="en"><head>
<meta charset="UTF-8">
<title>Document</title>
<style>em {width: 300px;height: 300px;background-color: green;display: inline-block; /*行内块元素*/}/*行内块元素之间会有一条约3px的缝,两个并排的图片之间也存在,可以用float去掉*/.d1 {width: 300px;height: 300px;background-color: red;display: inline-block;/*float: left;浮动*/}s.d2 {width: 300px;height: 300px;background-color: blue;display: inline-block;/*float: left;*/}body {background-color: #000;}
</style>
</head>
<body><em>hello,Em</em> <a href="##">百度</a><hr><div class="d1"></div> <div class="d2"></div>
</body>
</html>

转载于:https://www.cnblogs.com/frozeninferno/p/7079652.html

6.23 css综合选择器相关推荐

  1. CSS复合选择器,元素的显示模式,CSS背景设置

    CSS复合选择器,元素的显示模式,CSS背景设置 欢迎大家去博客冰山一树Sankey,浏览效果更好.直接右上角搜索该标题即可 博客园主页:博客园主页-冰山一树Sankey CSDN主页:CSDN主页- ...

  2. day4 css复合选择器元素背景

    1. Emmet语法 前身是zen coding,使用缩写来提高编写速度. 1.1 快速生成html语法结构 1.2 快速生成css语法结构 1.3 快速格式化代码 2. css复合选择器 2.1 复 ...

  3. 【网页制作】CSS基本选择器讲解(附讲解视频)

    1.首先我们要知道什么是选择器? 选择器是通过一定的语法规则选取对应HTML标记,然后给对应的HTML标签设置样式.比如:长度,宽度,颜色等等. 2.选择器类别 选择器一共有四类: 1基本选择器,2复 ...

  4. 个人HTML、CSS综合

    关于HTML:是用于开发网页的一门语言.(如建造房子时所用到的砖块) 关于CSS:用于美化.渲染网页的一门语言.( 如装修房子时用到的石灰.油漆等涂料) 目录 一.HTML概述 1.1         ...

  5. CSS基础选择器、字体和文本样式

    一.CSS简介 美化网页.布局页面 CSS(层叠样式表Cascading Style Sheets)(CSS样式表或级联样式表) 主要用于设置HTML中的文本内容(字体.大小.对齐方式等).图片的外形 ...

  6. 简述css属性选择器的几种定义方式_CSS基础试题

    一.单选题 1.CSS是利用(  B   )XHTML标签构建网页布局. A. C.       D. 2.在CSS语言中下列哪一项是"左边框"的语法(  C  ) A.borde ...

  7. CSS初识- 选择器 背景 浮动 盒子模型

    CSS初识 CSS:cascading style sheets,css样式表或层叠样式表(级联样式表),主要用于设置HTML页面中的文本内容(字体.大小.对齐方式等).图片的外形(宽高.边框样式.边 ...

  8. CSS Diner选择器练习网站答案

    CSS Diner选择器练习网站答案 CSS Diner网址 答案 01. plate 02. bento 03. #fancy 04. plate apple 05. #fancy pickle 0 ...

  9. css学习(第一天)(css基础选择器,css字体属性,css文本属性,css引入方式)

    CSS第一天 1.css简介 1.1 html的局限性 1.2 css-网页的美容师 1.3 css语法规范 1.4 css代码风格 1.4.1 样式格式书写 1.4.2 样式大小写风格 1.4.3 ...

最新文章

  1. 【Luogu】P1013进制位(搜索)
  2. 如何提高企业竞争力,科学的组织架构是第一王牌
  3. 深入理解神经网络之逻辑回归
  4. 转:PHP Liunx 服务安全防范方案
  5. 自适应/响应式网页设计
  6. jquery 去除空格
  7. 批量html转换成excel,Excel批量转为Html,Html转换成Excel - 软件教程网
  8. 【斜率优化】玩具装箱(luogu 3195)
  9. react改变checkbox的文字类型_React Checkbox不发送onChange
  10. constraintlayout_androidApi:ConstraintLayout
  11. 谈一谈我对于目前国人对于EXTJS的错误看法
  12. 数组使用方法集合(建议收藏)
  13. PyTorch:tensor-张量维度操作(拼接、维度扩展、压缩、转置、重复……)
  14. win8下IE10停止工作解决办法
  15. 如何在B站读一个深度学习的研究生?
  16. NPP/VIIRS夜间灯光数据下载和介绍
  17. 软件项目管理复习题库(学生自制非官方)
  18. 解决谷歌导入Vue开发工具没反应的问题
  19. ModuleNotFoundError: No module named ‘项目同名.settings’
  20. JAVA对接飞猪旅行_飞猪 - 开放平台

热门文章

  1. 计算机网络首地址和末地址公式,ip地址的首地址与末地址是什么意思
  2. 联想e540风扇清灰_联想e540笔记本测评怎么样
  3. 【线段树】「CodePlus 2018 3 月赛」白金元首与克劳德斯
  4. 全文检索-Elasticsearch-进阶检索
  5. 外接光驱安装Linux出现dracut
  6. Python 3.11 正式版发布,比 3.10 快 10-60%,官方:这或许是最好的版本
  7. 爱奇艺流量反作弊的“术”与“道”
  8. 分析到决策?“AI+BI”这辆车你得尽快搭上
  9. 考研c语言难度,大一新生注意:这些学科的“补考”比考试还难,而且挂科率超高...
  10. RISC-V 指令集的模块化和寄存器结构