web前端知识总结(中) 非常适合小白入手

本文详细介绍了CSS选择器的各种类型,包括元素选择器、属性选择器、ID和Class选择器,以及伪元素选择器和伪类选择器的用法。同时涵盖了优先级、单位、盒模型、弹性盒子布局和定位属性的讲解,为Web开发者提供了全面的CSS技术指南。
摘要由CSDN通过智能技术生成

CSS选择器

一.基本选择器

1.元素选择器 E{}               

           *元素选择器中的特例,代表所有类型的元素

          *{padding:0;margin:0}

2.属性选择器 E[attr]{}         

           ^=前缀 $=后缀 *=包含 =严格等于

           div[id^=zz]{} div里面套着id属性

3.id选择器 #id{}                 

             元素选择器与id选择器结合时没有空格

4.class选择器                   

              .class{} 元素选择器与class选择器结合时没有空格

5.包含选择器                     

                selector1 selector2 ……{} div .zz{}

6.子元素选择器                   

                  selector1>selector2>...

7.兄弟元素选择器               

                   selector1~selector2{} 从selector1向下查找selector2的兄弟(具有共同父级元素的元素)

8.选择器组合                       

                   selector1,selector2,...{}

二.伪元素选择器

1.首字符伪元素选择器   

::first-letter{} 使用前提:依附元素必须是块级元素

2.首行伪元素选择器     

::first-line{} 使用前提:依附元素必须是块级元素

3.自定义前置伪元素选择器   

::before{} 使用前提: 不管需不需要自定义,必须使用content 属性

4.自定义后置伪元素选择器   

::after{} 使用前提: 不管需不需要自定义,必须使用content 属性

三.伪类选择器

1.结构性伪类选择器

:nth-child() 着重点是位置 括号中可以放数字,数字从1开始代表第一个 odd代表奇数 even代表偶数 加法表达式 2n+1 其中n从0开始

:nth-last-child() 括号中可以放数字,数字从1开始代表第一个 odd代表奇数 even代表偶数 加法表达式 2n+1 其中n从0开始

:nth-child(1) 等价于 :first-child 查第一个元素

:nth-last-child(1) 等价于 :last-child 查最后一个元素

:nth-of-type() 着重点是类型 数字从1开始代表第一个 odd代表奇数 even代表偶数 加法表达式 2n+1 其中n从0开始

:nth-last-of-type() 括号中可以放数字,数字从1开始代表第一个 odd代表奇数 even代表偶数 加法表达式 2n+1 其中n从0开始

:nth-of-type(1) 等价于 :first-of-type 查第一个元素

:nth-last-of-type(1) 等价于 :last-of-type 查最后一个元素

2.UI状态伪类选择器

:hover 悬停状态

:focus 焦点状态

:checked 选中状态

:disabled 不可用状态

3.其他伪类选择器

:not() 过滤掉某个或某些元素 (连续使用 :not)

CSS选择器的优先级

1.选择器写的越准确(越长),优先级越高

2.id选择器>class选择器>元素选择器

3.同级别同长度下,css代码按照顺序执行,后写的代码覆盖前面写的代码

CSS长度单位

1.绝对长度单位

px(像素)、in(英寸)、cm(厘米)、mm(毫米)等

2.相对长单位

        %(以父级元素的尺寸为参考维度)

        em(以父级元素字体大小为参考维度)

        rem(以html元素字体大小为参考维度)

        vh(以视口的高度为参考维度)

        vw(以视口的宽度为参考维度)

        vmin(以视口的高度、宽度最小的为参考维度)

        vmax(以视口的高度、宽度最大的为参考维度)

html和box的默认font-size 是16px

盒子模型 display

居中 text-align: center

块级元素 特征:独占一行,对宽度、高度、对齐方式支持

display:block

举例:div ul li h1-h6

内联级元素 特征:不独占一行 对宽度、高度、对齐方式不支持

display:inline

举例:span、a

内联块级元素 特征:不独占一行 对宽度、高度、对齐方式支持

display:inline-bolck

举例:img input table

弹性盒子元素 特性:弹性盒子内子元素默认始终横着布局,子元素高度一致

display:flex

盒子内部结构:由内到外分别是 内容区、填充区、边框区、外边距区

内容区:     width、height 默认是对内容区起作用

填充区:     padding:以上为开始 顺时针旋转,不够对称

                padding:10px 上下左右距离10px

                padding:10px 20px 上下距离10px 左右距离20px

边框区:    border 复合属性 border-style边框的样式 border-width边框的宽度

                border-color 边框的颜色

复合属性可以分着写 可以合着写

外边距区: margin 以上为开始 顺时针旋转,不够对称 auto(水平有效)只针对左右居中

配套属性:box-sizing:content-box(内容区) border-box(内容区+边框区)

补充:浏览器中对中西文字换行规则不一样:中文可以在任意处换行,英文默认只会在空格或者连字符处换行

如果想改变换行规则:word-break:break-all(换行)(默认是keep-all 不换行)

横向布局

弹性盒子模型 display:flex

配套属性:

flex-direction

           作用对象:弹性盒子

          设置弹性盒子内子元素的排列方向,其值有row(横着,默认)

           colum(竖着) colum-reverse(反向竖着)row-reverse(反向横着)

flex-wrap

            作用对象:弹性盒子

           设置弹性盒子内子元素是否换行

           其值有 nowrap(不换行,默认) wrap(换行)

order

            作用对象:弹性盒子内子元素

           设置该子元素的排列位置 值越小越靠前

flex

             作用对象:弹性盒子内子元素

             复合属性

            flex-grow(拉伸因子) (占不满的时候按比例来分) flex-grow:1

            flex-shrink(收编因子) (超出的按比例去减去)

            flex-basis(基准宽度)

注:flex:1 代表是1 1 0

justify-content

             作用对象:弹性盒子

            设置弹性盒子内子元素在排列方向上的分布方式

            center(居中) flex-start(弹性的开端) flex-end(弹性的尾端)

            space- between(空白在中间) space-around(空白在周围)

align-items

            作用对象:弹性盒子

            设置弹性盒子内子元素在排列方向上垂直方向的对齐方式

            center(居中) flex-start(弹性的开端) flex-end(弹性的尾端)

             baseline(弹性的开端,以元素内容的底端为基准线对齐)

align-content

             作用对象:弹性盒子

             设置弹性盒子内行的分布方式

             center(居中) flex-start(弹性的开端) flex-end(弹性的尾端)

             space- between(空白在中间) space-around(空白在周围)

定位:position

其值有static(静态,默认),relative(相对定位),absolute(绝对定位),fixed(固定定位)

配套属性:left、right 、top、bottom 、z-index(层次,值越大越靠前) 前提是position属性的值必须是relative(相对定位),absolute(绝对定位),fixed(固定定位)三个中其中一个

场景:

1.纯使用relative 保留元素的物理空间,定位参考位置是元素本身,随着浏览器的滚动而滚动

2.纯使用absolute 不保留元素的物理空间,定位参考位置是浏览器,随着浏览器的滚动而滚动

3.纯使用fixed 不保留元素的物理空间,定位参考位置是浏览器,不随着浏览器的滚动而滚动

4.结合使用relative和absolute relative作用祖先元素,absolute作用于该元素,达到该元素不保留元素的物理空间,定位参考位置是祖先元素,随着浏览器的滚动而滚动

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值