css选择器、css继承关系、css盒子模型

一、摘要

总结前端部分css选择器、css继承关系、css盒子模型等相关知识,并对容易出错的地方进行分析说明。

二、原因

在开发前端页面时如果对css选择器、继承关系,层叠,以及padding、margin区别和浮动问题理解不到位,会导致不知道什么时候该用哪种方法来处理问题。此文档是针对这些问题进行说明。

以下是对相关知识点的总结与分析:

三、选择器

1、基本选择器

(1)* 通配符选择器  代表所有元素

例子: *{ margin:0; padding:0;}

(2)标签选择器 代表网页中的所有的该标签

例子: p{ width:250px; border:1px solid red;}

(3)class选择器  .class名称

例子:  .sub{ width:250px;} 代表所有class名为sub的元素

(4)id选择器   # id名称

例子:#uname{ background:red;}代表id名为uname的唯一元素

2、层次选择器

(1)后代选择器  选择1   选择2

例子: ul li{color:blue;}

>选择1>选择2  直接子元素选择器

代表li元素的父亲元素(父辈)必须是ul

(2)并列选择器 选择器A,选择器B

例子:#uname,#upass{ border:1px solid red}

uname 和upass 都设置一个红色的边框

注意:要想操作一个元素就要用上面的选择器先选择元素 再开始  设置css

3、过滤选择器

(1)基本过滤选择器

:first-letter  第一个字母

:first-line    第一行

(2)子元素过滤选择器

[1]  ul li:first-child

ul的第一个li元素 (li必须是ul的第一个子元素)

[2]  ul li:nth-child(2)

选择ul 第二个li元素(li必须是ul的第二个子元素)

[3]  ul li:nth-child(2n)/(2n+1)

选择ul 的奇数或偶数个li元素

(3)伪类选择器

[1]  a:link {color:#FF0000;} / 未访问的链接 / (只用于a标签)

[2]  a:visited {color:#00FF00;} / 已访问的链接 / (只用于a标签)

[3]  a:hover {color:#FF00FF;}/* 鼠标移动到链接上

[4]  a:active {color:#0000FF;} / 选定的链接 /

5、属性选择器

1、选择包含某一属性的元素

a[title]{color:red;} 选择包含title的a标签

四、css的继承

在css中子元素会继承父亲元素的文字属性

但是a 不会继承颜色属性和文字装饰属性

h不会继承文字大小属性和粗细属性

五、盒子模型

1、 对盒子模型的理解

[1]盒子模型就是一个有高度和宽度的矩形区域,所有html标签都 是盒子模型

[1] 标准盒子模型 由 content+padding+border+margin组成

[2] 一个元素的实际宽度

width(内容)+padding(内边距)+border(边框的宽度)

设置的width 只是设置了内容的宽度

[3] 边框到自己的内容(文字&子元素)的距离可以用

a、设置该元素的padding (会增加该元素的宽高,只用写一次)

b、子元素上面设置margin(不会增加父亲元素的大小,所有的子元素都要设置margin

c、 父亲元素的padding+子元素的margin

2、margin写法

margin 元素的边框到别的元素(父亲元素   兄弟元素)距离

(1)、margin简写


上下左右


margin:50px;


上下   左右


margin: 50px  100px


上   左右   下


margin:50px  100px  150px


上  右   下  左(顺时针)


margin:50px  100px  150px 250px

(2)、指定方位

margin-left

margin-right

margin-top

margin-bottom

(3)、文本居中

当一个元素有设置宽度  maring-left  maring-right 为auto

会自动在它的父亲元素里面水平居中(元素不能设置浮动 float)

例如:.container{ width:1000px; margin:0 auto;}

*区分text-align与margin:0 auto;

p{ text-align:center;}/*p 里面的文字在p的范围内居中*/

p{ width:250px; margin:0 auto;}/*p 元素宽度为250px  并且整个p元素在它的父亲元素的里面居中*/

时间: 2024-10-19 02:00:14

css选择器、css继承关系、css盒子模型的相关文章

CSS选择器的权重关系

切记CSS选择器的权重关系,避免在页面中出现CSS样式无法生效的情况~ – 内嵌 id class 元素 – a b c d 内嵌 1 0 0 0 id 0 1 0 0 class.属性.伪类 0 0 1 0 元素.伪元素 0 0 0 1 通配符* 0       !improtant(写在声明中,更改权重值) 最高       a组数值只有把CSS写进style属性时才会为1,否则为0: b组数值决定于ID选择器,有多少ID选择器,并会进行此数组值累加: c组数值决定于类选择器,有多少类选择器

CSS基础学习十五:盒子模型补充之外边距合并

今天继续接着CSS盒子模型补充,CSS基础学习十三:盒子模型和CSS基础学习十四:盒子模型补充之display属 性设置都是介绍了盒子模型中的内容概括.开始今天的主题:外边距合并. 外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合 并的外边距的高度中的较大者. (1)外边距合并 外边距合并叠加是一个相当简单的概念.但是,在实践中对网页进行布局时,它会造成许多混淆.简单地说,外 边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的

CSS中的间距设置与盒子模型

CSS间距 内补白 外补白 盒子模型 CSS间距 很多时候我们为了美观,需要对内容进行留白设置,这时候就需要设置间距了. 内补白 设置元素的内间距 padding: 检索或设置对象四边的内部边距 padding:10px; 上下及两边设置 padding:5px 10px; 由上边界开始,顺时针设置 padding:10px 20px 30px 40px 单边设置 padding-top: 检索或设置对象顶边的内部边距 padding-right: 检索或设置对象右边的内部边距 padding-

前端极易被误导的css选择器权重计算及css内联样式的妙用技巧

记得大学时候,专业课的网页设计书籍里面讲过css选择器权重的计算:id是100,class是10,html标签是5等等,然后全部加起来的和进行比较... 我只想说:真是误人子弟,害人不浅! 最近,在前端群里还发现以上观点类似的奇葩聊天,真是*** 其实,也是在很久以前,看了腾讯ISUX的一位前端工程师-麦时分享的一篇技术文章(个人站点已失效,就不贴出来了),才了解到真正的css选择器权重计算. 以下是css选择器权重计算精华所在,翻译自国外的文档(记得是W3C给出的计算规则) 如果一个声明来自s

css知多少(7)——盒子模型

1. 引言 从这一节开始,我们就进入本系列的第三部分--css呈现.本部分将描述css在页面的几种布局和呈现的特性.包括两类:文字.块. 第一类--文字.这部分相对比较简单一些,例如设置字号.字体.颜色.背景色.是否加粗等.重点的地方在于设置字体.设置行高.文字相关的距离都用相对值,这些东西在<css知多少(4)--解读浏览器默认样式>那一节已经说过了.另外还有一个重点,就是web端最流行的字体库fontAwesome,关于它我之前有一篇文章专门讲过,请参见<请用fontAwesome代

CSS基础学习十四:盒子模型补充之display属性设置

我在CSS基础学习十三:盒子模型的i博文只是阐释了CSS盒子模型,并没有过多的使用实例来演示.这篇博文 就来做一些盒子模型知识的补充.这一部分对于网页总体布局还是蛮重要的,过去大多数使用HTML中的table元素和 框架标签来进行网页的整体布局,现在我们使用最多的是DIV+CSS网页布局.所以一定要掌握好盒子模型,记住 content,border,padding和margin各自在盒子中的作用和使用方式. 先来看一个完整元素的盒子模型实例: <!DOCTYPE html PUBLIC "

CSS box-flex属性,然后弹性盒子模型简介

一.here we go 看到大神写的关于box-flex的介绍,忍不住收了,大神介绍的很详细,新技能get! 二.box-flex属性(和谐版) 有道桌面词典显示,"flex"一词中文有"收缩"之意.不过,从此属性实际上产生的效果来看,无论怎样用"收缩"一词解释都显得很牵强.所以,这 里,直接抛开字面意思,我们可以将"box-flex"理解为"房子-分配".box为"盒子"的意思,我们

CSS学习笔记(float和盒子模型)

1.当元素或者是它的包裹层设置了绝对定位或者是浮动,那么margin:0 auto;自动居中的效果就不会实现. 2.盒子模型的三位立体结构图中从第一层到第五层依次为:border.content+padding.background-image.background-color.margin. 3. 设置了浮动属性(float)的元素: 1.会向指定方向(left或right)一直移动,直到容器边缘: 2.处于标准文档流中: 3.若不设置宽高,则以内容的宽高为准: 4.仅对紧邻的后续元素造成影响

2015年7月9日 CSS第二课(浮动、盒子模型、绝对定位和相对定位)

list-style-type:none是指不显示项目符号 1.块级元素的特点:       常用的块级元素有:body,ul li,ol li,h1-6,div,hr,p,table……等 (1)块级元素里面的内容,或者背景图片,默认显示在块的左上角 (2)块级元素,默认情况下,单独占满一行. 常用的块级元素:div.p.h1-h6.hr.ul li.ol li.table.body... 2.浮动:float 作用:通过漂浮,让块级元素实现并排 float:left 或 right 注意:如

css 选择器的优先级-【css选择器世界】

1 对于优先级的计算,数值计数法: 每一段css语句的选择器都对应一个具体的数值,数值越大,优先级越高,其中的css语句将被优先渲染. 其中:出现一个0级选择器,优先级数值+0: 出现一个1级选择器,优先级数值+1: 出现一个2级选择器,优先级数值+10: 出现一个3级选择器,优先级数值+100: 2 css优先级规则 0级:通配符选择器.选择符.逻辑组合伪类 * + .> .~.空格.|| 逻辑组合伪类: :not .:is.:where 1级: 标签选择器 2级:类选择器,属性选择器,伪类