资讯专栏INFORMATION COLUMN

前端(三)之选择器高级与盒模型

番茄西红柿 / 2039人阅读

摘要:内容不会被修剪,会呈现在元素框之外。内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。值描述内联块级内联块

前端之 CSS 选择器高级与盒模型

前言

先回顾昨日的内容,昨天讲了 w3c 的整个架构,由结构层>布局层>内容层三部分组成,了解了 CSS 的三种引入方式,行间式最简单直接;内联式解耦合,可读性强;外联式适合团队高效开发,耦合性低,复用性强,了解了三种选择器,并且 id 选择器>类选择器>标签选择器>通配选择器,还有通过多类名选择器来操作标签。还有常用的长度单位包括 px、cm、mm、em、vw、in,颜色属性有 rgb、rgba 等,还有操作文本样式的属性调整字体大小,字体风格,文本对齐,缩进,字间距,词间距等,其中 font 是综合性描述:font: 风格 大小/行高 字族(风格可以省略),比如font: 100 normal 60px/200px STSong;最后讲的就是 display,这是一个重点难点,display 目前只介绍了三个属性值:inline:不支持宽高,宽高由文本内容撑开,只能嵌套 inline 标签同行显示;block:像 p 标签,h 标签的 display 属性就是 block,支持所有的 css 样式,默认有宽高(自定义后取自定义值),能嵌套所有标签,异行显示;inline-block:支持所有css 样式,默认没有宽高(由内容撑开(可以自定义宽高))不建议嵌套任意标签,同行显示。

选择器高级

组合选择器

群组选择器

群组选择器可以同时控制多个选择器,语法:逗号分隔,控制多个




    
    群组选择器
    


    
001
002
003
  • 一次性控制多个选择器
  • 选择器之间以,隔开,每一个选择器位均可以为任意合法选择器或选择器组合

子代(后代)选择器

子代选择器用>连接
body > div {
    color: red;
}
后代选择器用空格连接
.sup .sub {
    color: red;
}
  • 一次性控制一个选择器(逻辑最后的那个选择器),前置位的选择器为修饰性选择器
  • 每一个选择器位均可以为任意合法选择器或选择器组合
  • 子代选择器必须为一级父子嵌套关系,后代选择器可以为一级及多级父子嵌套关系

相邻(兄弟)选择器

相邻选择器用+连接
.d1 + .d2 {
    color: red;
}
兄弟选择器用~连接
.d1 ~ .d3 {
    color: red;
}
  • 一次性控制一个选择器(逻辑最后的那个选择器),前置位的选择器为修饰性选择器
  • 每一个选择器位均可以为任意合法选择器或选择器组合
  • 相邻选择器必须为直接相邻关系,兄弟选择器可以为直接相邻或间接相邻关系

交集选择器

div.d#dd { color: red; }
.d1.d2.d3 { color: red; }

组合选择器优先级

  • 组合选择器优先级与权值相关,权值为权重和
  • 权重对应关系
选择器 权重
通配 1
标签 10
类、属性 100
id 1000
!important 10000
  • 选择器权值比较,只关心权重和,不更新选择器位置
  • 不同级别的选择器间不具备可比性:1个类选择器优先级高于n个标签选择器的任意组合

属性选择器

  • [attr]:匹配拥有attr属性的标签
  • [attr=val]:匹配拥有attr属性,属性值为val的标签
  • [attr^=val]:匹配拥有attr属性,属性值以val开头的标签
  • [attr$=val]:匹配拥有attr属性,属性值以val结尾的标签
  • [attr*=val]:匹配拥有attr属性,属性值包含val的标签
v_hint:属性选择器权重等价于类
v_test:掌握所有选择器,并熟知选择器优先级

伪类选择器

1、a标签四大伪类

  • :link:未访问状态
  • :hover:悬浮状态
  • :active:活跃状态
  • :visited:已访问状态

2、内容伪类

  • :before:内容之前
  • :after:内容之后
:before, :after {
    content: "ctn";
}

3、索引伪类

  • :nth-child(n):位置优先,再匹配类型
  • :nth-of-type(n):类型优先,再匹配位置
v_hint:值可以为位置数,也可以为2n、3n...,代表2的倍数,3的倍数,且位置数从1开始

4、取反伪类

  • :not(selector):对selector进行取反

盒模型

盒模型概念

  • 广义盒模型:文档中所有功能性及内容性标签,及文档中所有显示性标签
  • 侠义盒模型:文档中以块级形式存在的标签(块级标签拥有盒模型100%特性且最常用)
  • 盒模型组成:margin + border + padding + content
v_hint:content = width x height

盒模型成员介绍

1、content

  • 通过设置width与height来规定content
  • 块级标签可以设置自身宽高,默认宽为父级宽(width=auto)、高为0,高度可以由内容决定
  • 内联标签不可以设置自身宽高,默认宽高均为0,宽高一定由内容决定

2、border

  • border(边框)由border-width(宽度)、border-color(颜色)、border-style(风格)三部分组成
  • border成员:border-left、border-right、border-top、border-bottom
  • border-width成员:border-left-width、border-right-width、border-top-width、border-bottom-width
  • border-color成员:border-left-color、border-right-color、border-top-color、border-bottom-color
  • border-style成员:border-left-style、border-right-style、border-top-style、border-bottom-style
风格 解释
solid 实线
dashed 虚线
dotted 点状线
double 双实线
groove 槽状线
ridge 脊线
inset 内嵌效果线
outset 外凸效果线
v_hint:border满足整体设置语法,eg:border: 1px solid red;

3、padding

  • padding成员:padding-left、padding-right、padding-top、padding-bottom
  • padding整体设置
值得个数 方位
1 上下左右
2 上下 | 左右
3 上 | 左右 | 下
4 上 | 右 | 下 | 左

4、margin

  • margin成员:margin-left、margin-right、margin-top、margin-bottom
  • margin整体设置
赋值个数 方位
1 上下左右
2 上下 | 左右
3 上 | 左右 | 下
4 上 | 右 | 下 | 左

边界圆角

border-radius

  • border-radius成员
成员 解释
border-top-left-radius 左上 方位
border-top-right-radius 右上 方位
border-bottom-left-radius 左下 方位
border-bottom-right-radius 右下 方位
  • 单方位设置
赋值个数(值类型:长度 | 百分比) 解释
1 横纵
2 横 | 纵
  • 按角整体设置
赋值个数(值类型:长度 | 百分比) 解释
1 左上 右上 左下 右下
2 左上 右下 | 右上 左下
3 左上 | 右上 左下 | 右下
4 左上 | 右上 | 右下 | 左下
  • 分向整体设置
格式 解释
1 / 1 横向 | 纵向

其他相关属性

  • max|min-width|height
  • overflow
描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden 内容会被修剪,并且其余内容是不可见的。
scroll 内容会被修剪,但是浏览器会显示滚动条以便查看其余的内容。
auto 如果内容被修剪,则浏览器会显示滚动条以便查看其余的内容。
inherit 规定应该从父元素继承 overflow 属性的值。
  • display
描述
inline 内联
block 块级
inline-block 内联块

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/1463.html

相关文章

  • 前端(四)精灵图与盒模型布局

    摘要:前端之常用标签的使用边界圆角精灵图以及盒模型的布局前端之常用标签的使用边界圆角精灵图以及盒模型的布局前言前言上篇博客介绍了组合选择器,包括四种,分别是群组选择器后代子代选择器兄弟相邻选择器及交集选择器标签的四大伪类选择器,,其中和也可以用于前端之常用标签的使用、边界圆角、精灵图以及盒模型的布局 前言 上篇博客介绍了组合选择器,包括四种,分别是群组选择器、后代(子代)选择器、兄弟(相邻选择器)...

    xiangchaobin 评论0 收藏0
  • 模型的一些碎碎念

    摘要:盒模型的简介本文简单的总结了一些基本概念,知识点以及细节问题作为前端人员,盒模型是最基础的知识点,在排版与布局时不可避免与盒模型打交道。 1. 盒模型的简介 本文简单的总结了一些基本概念,知识点以及细节问题 作为前端人员,盒模型是最基础的知识点,在排版与布局时不可避免与盒模型打交道。 在我们编写HTML时,网页上的内容几乎都是被包在一个个元素(当然也可以叫做标签)中的,最常见的有div...

    王伟廷 评论0 收藏0
  • 模型一二(一):盒世界,知几何

    摘要:比如表示上下左右都是像素块元素居中的样式,表示上下表示左右而表示上,左右,下。浏览器对块元素的默认样式问题如下块元素的盒模型样式复合属性写法如果我们想给添加样式,可以这样写为了精简代码,也可以采用如下的复合属性写法 学习 HTML 和 CSS 将近一个月,我以为:层级(嵌套)关系和盒模型(Box Model)是理解和学习这两门语言的基石,正如图层概念是 Photoshop 的基础。因此...

    tuantuan 评论0 收藏0
  • 前端知识归纳

    摘要:继承性子标签会继承父标签样式优先级行内样式选择器类选择器标签选择器通配符继承机制创建了的元素中,在垂直方向上的会发生重叠。 技能考察: 一、关于Html 1、html语义化标签的理解; 结构化的理解; 能否写出简洁的html结构; SEO优化 a、理解:根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时 让浏览器的爬虫和...

    sixleaves 评论0 收藏0
  • 前端知识归纳

    摘要:继承性子标签会继承父标签样式优先级行内样式选择器类选择器标签选择器通配符继承机制创建了的元素中,在垂直方向上的会发生重叠。 技能考察: 一、关于Html 1、html语义化标签的理解; 结构化的理解; 能否写出简洁的html结构; SEO优化 a、理解:根据内容的结构化(内容语义化),选择合适的标签(代码语义化)便于开发者阅读和写出更优雅的代码的同时 让浏览器的爬虫和...

    NotFound 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<