欢迎来到DIVCSS5查找CSS资料与学习DIV CSS布局技术!

css — 权重、继承性、排版、float

css — 权重、继承性、排版、float

目录

  • 1. 继承性
  • 2. css中的权重
  • 3. 常用格式化排版
  • 4. 浮动布局float

1. 继承性

继承性:在css有某些属性是可以继承下来,如 color,text-xxx,line-height,font-xxx,letter-spacing,word-spacing是可以继承下来,但有些属性是不可以继承下来的,如 border:1px solid green;

2. css中的权重

继承来的属性权重值约为0

权重比较规则:

  • 如果选中了标签:
    • 1.数选择器数量: id 类 标签 ,谁大它的优先级越高,如果一样大,后面的会覆盖掉前面的属性
    • 2.选中的标签的属性优先级用于大于继承来的属性,它们是没有可比性
    • 3.同是继承来的属性
      • 1.谁描述的近,谁的优先级越高
      • 2.描述的一样近,这个时候才回归到数选择器的数量

!important 它设置当前属性的权重为无限大,大不过行内样式的优先级

注意:!important要写在分号的前面

使用!important是一个坏习惯,应该尽量避免,因为这严重破坏了样式表中固有的权值比较规则,使得在调试bug变得更加困难。

3. 常用格式化排版

3.1 字体属性

1.字体

语法:

/*网页中的文字设置字体为微软雅黑*/
body{font-family:"Microsoft Yahei"}

2.备选字体

语法:

body{font-family:'Microsoft Yahei','宋体','黑体';font-size: 14px}

备选字体可以有无数个,那么浏览器在去解析这个代码的时候,是从左往右解析的,如果没有微软雅黑,再去找宋体,最后黑体。

3.字体大小

字体大小单位:px、em、rem,一般浏览器的字体大小默认为为16px。

语法:

boy{font-size: 20px;}

px是绝对单位也叫固定尺寸,不管在多少尺寸的屏幕下,始终是当前的尺寸

em相对单位,相对于当前盒子的字体大小

.box{
    font-size: 20px;
    /*1em = 20px*/
    width: 20em;
    height: 20em;
    background-color: red;
}

rem相对单位,相对于根元素(html)的字体大小

html{
    font-size: 40px;
}
.box{
    /*1rem = 40px  1px  = 0.025rem */
    /*1 : 0.025 = 400 : ?*/
    font-size: 12px;
    width: 20rem;
    height: 20rem;
    background-color: red;
}

4.字体样式

norma 默认的,文本设置为普通字体

italic 斜体字体

oblique 倾斜字体

语法:

{font-style: italic;}

5.字体粗细

normal 普通的字体粗细,默认的,相当于数字值400

bold 加粗的字体粗细,相当于数字值700

lighter 比普通字体更细的字体

bolder 比bold更粗的字体,相当于数字值900

数字值:100~900,取值范围:100、200、300、400、500、600、700、800、900

语法:

{font-weight: 700;}

3.2 文本属性

1.文本修饰

none 无文本的修饰

underline 文本下划线

overline 文本上划线

line-through 穿过文本的线,可以模拟删除线。

语法:

#box p:hover{
    text-decoration: underline;
}

2.文本缩进

语法:

#box2{
    /*字体大小*/
    font-size: 20px;
    /*设置文本缩进*/
    text-indent: 2em;
}

3.中文字间距、英文单词间距

#box2{
    /*字体大小*/
    font-size: 20px;
    /*设置文字之间的间距*/
    letter-spacing: 2px;
    /*设置英文单词之间的间距*/
    word-spacing: 10px;
}

4.文本对齐

left 靠左

center 居中

right 靠右

justify 仅限于对英文的两端对齐

语法:

{text-align: center;}

4. 浮动布局float

4.1 浮动的介绍

浮动是网页布局中非常重要的一个属性。那么 浮动 这个属性一开始设计的初衷是为了网页的 文字环绕效果 。

例:如果让两个div在一排内显示,那怎么办,可能有的同学会说使用display属性啊,把他们设置成inline-block。但是,你会发现两个div盒子中间有间隙,仅仅的这点间隙,到底是多大呢,如果我们在一行内计算整个盒模型的宽度的话,是否又计算的精准呢?所以使用display的方法是不对的,这时我们就用到了浮动属性 ,浮动可以实现元素并排。

4.2 浮动属性

none 表示不浮动,所有之前讲解的HTML标签默认不浮动

left 左浮动

right 右浮动

inherit 继承父元素的浮动属性

语法:

box{
    float: left;
}

4.3 浮动的现象

1.我们之前说浮动的设计初衷是为了做”文字环绕效果“。那么我们就来看一下如果对盒子设置了浮动,会产生什么现象?

  • 1.脱离标准文档流,不在页面上占位置 ,即“脱标”

  • 2.产生‘文字环绕’的效果 ,设置浮动属性的初衷

  • 3.“贴边” 现象: 给盒子设置了浮动,会找浮动盒子的边,如果找不到浮动盒子的边,会贴到父元素的边,如果找到了,就会贴到浮动盒子的边上

    出现贴边现象的原因:

    • 当一个元素浮动之后,它会被移出正常的文档流,然后向左或者向右平移,一直平移直到碰到了所处的容器的边框,或者碰到另外一个浮动的元素的边框
  • 4.收缩效果

    • 在没有给盒子设置浮动之前,盒子是占据一整行的,一旦设置了浮动那么盒子的宽度就是内容的宽度了。
<style>
    *{
        padding: 0;
        margin: 0;
    }
    .father{
        width: 800px;
        margin: 100px auto;
        height: 400px;
        border: 1px solid #000;
    }
    .child1{
        /*width: 200px;*/
        height: 400px;
        background-color: red;
        float: left;
    }
    .child2{
        /*width: 300px;*/
        height: 200px;
        background-color: green;
        float: right;
    }
</style>

<body>
    <div class="father">
        <div class="child1">mjj</div>
        <div class="child2">wusir</div>
    </div>

</body>
</html>

2.标准文档流

文档流指的是元素排版布局过程中,元素会默认自动从左往后、从上往下的流式排列方式。

即不对页面进行任何布局控制时,浏览器默认的HTML布局方式,这种布局方式从左往右,从上往下,有点像流水的效果,我们称为流式布局。

3.浮动带来的问题 :

不去计算浮动元素的高度,撑不起父盒子的高度

4.4 清除浮动的方式

1.给父元素添加固定高度

  • 问题:不灵活,后期不易维护
  • 应用:万年不变导航栏

2.内墙法

  • 给最后一个浮动元素的后面添加一个空的块级标签,并且设置该标签的属性为clear:both;

  • 问题:太冗余了

    <style>
      .clear{
                clear: both;
            }
    </style>
    <div class="father clearfix">
        <div class="child1">mjj</div>
        <div class="child2">wusir</div>
        <div class="clear"></div>
    </div>

3.伪元素清除法 (推荐大家使用)

给父元素添加一个类

.clearfix::after{
    content:'';
    display: block;
    clear: both;
    
    /*在content:'有内容的时候'; 上面三行代码 + 下面两行代码*/
    /*visibility: hidden;*/  /*把内容隐藏*/
    /*height: 0;*/  /*内容隐藏后的高度设置为0*/
}

4.overflow:hidden; (常用)

CSS属性overflow定义一个元素的内容太大而无法适应盒子的时候该做什么。

visible 默认属性,可见

hidden 内容会被修剪,并且超出内容会隐藏、不可见

scroll 内容会被修剪,浏览器会显示滚动条以便查看超出内容

auto 由浏览器定夺,如果内容被修剪,就会显示滚动条

inherit 规定从父元素继承overflow属性的值

当一个元素设置了overflow:hidden|auto|scroll属性之后,它会形成一个BFC区域,我们叫做它为块级格式化上下文。BFC只是一个规则,它对浮动定位都很重要,浮动定位和清除浮动只会应用于同一个BFC的元素。

浮动不会影响其它BFC中元素的布局,而清除浮动只能清除同一BFC中在它前面的元素的浮动。

总结:只要我们让父盒子形成BFC的区域,那么它就会清除区域中浮动元素带来的影响。

因为overflow:hidden;会形成BFC区域,形成BFC区域之后,内部有它的布局规则
计算BFC的高度时,浮动元素也参与计算。

注意:小心overflow:hidden;它自己的本意

 .box{
            width: 300px;
            height: 300px;
            border: 1px solid #000;
            /*overflow: visible;!*默认可见*!*/
            overflow: hidden;
            /*overflow: scroll;*/
            /*overflow: inherit;*/
        }

5.BFC

  • 1.BFC 定义

    BFC(Block formatting context)直译为”块级格式化上下文”。它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level Box如何布局,并且与这个区域外部毫不相干。

  • 2.BFC布局规则

    • 1.内部的Box会在垂直方向,一个接一个地放置。
    • 2.Box垂直方向的距离由margin决定。属于同一个BFC的两个相邻Box的margin会发生重叠
    • 3.每个元素的margin box的左边, 与包含块border box的左边相接触(对于从左往右的格式化,否则相反)。即使存在浮动也是如此。
    • 4.BFC的区域不会与float 元素重叠。
    • 5.BFC就是页面上的一个隔离的独立容器,容器里面的子元素不会影响到外面的元素。反之也如此。
    • 6.计算BFC的高度时,浮动元素也参与计算`
  • 3.哪些元素会生成BFC

    • 1.根元素
    • 2.float属性不为none
    • 3.position为absolute或fixed
    • 4.display为inline-block
    • 5.overflow不为visible

如需转载,请注明文章出处和来源网址:http://www.divcss5.com/html/h57572.shtml

  • 上一篇: HTML5新标签和CSS伪类
  • 下一篇: HTML定位和布局----float浮动
必备CSS教程Essential CSS Tutorials
必备HTML基础教程Essential HTML Tutorials
最新文章 NEWS
  • CSS 简介需要具备的基础知识
  • 如何使用纯CSS 实现一个没有DOM元素的动画效果
  • 什么是css盒子模型?
  • 什么是css盒子模型?
  • css技术是什么
  • 区块属性: (Block)
  • 五、CSS连接属性:
  • 虚拟主机相关知识
  • DIV CSS加载失败
  • DIV+CSS规范命名大全集合
CSS 特效 CSS EFFECTS
  • 纯DIV+CSS下拉菜单模块模板
    纯DIV+CSS下拉菜单模块模板
  • DIV+CSS分页_CSS翻页代码模板
    DIV+CSS分页_CSS翻页代码模板
  • css form实例 用CSS实现表单form布局实例
    css form实例 用CSS实现表单form布局实例
  • 经典DIV+CSS下拉菜单
    经典DIV+CSS下拉菜单
  • div+css不间断上下滚动模板
    div+css不间断上下滚动模板
  • 向上不间断滚动div+css+js模板
    向上不间断滚动div+css+js模板
相关文章 RELATED
  • scroll html5无效,better-scroll之吸顶效果巨坑挣扎中
  • web前端在线开发,html注释标签,成功拿到offer
  • html5前端开发前景,HTML5前端开发是做什么的?
  • html特殊效果,推荐8款HTML5相关的特殊效果
  • html5 – 在html画布上移动图像
  • html圣诞效果,HTML5实现圣诞树效果
  • html5 css3炫酷效果,28种纯CSS3炫酷loading加载动画特效
  • HTML5 svg和CSS3炫酷火箭升空动画特效
  • html 载入效果,HTML5 Loading动画特效集锦
  • html5基本动画条件,做好这5点基本要求
热点文章 HOT
  • css 字间距离_css 字体字符间距设置
  • CSS border边框属性教程(color style)
  • div css float浮动用法(left right)
  • CSS 文本字体颜色(CSS color)
  • CSS 高度(css height)
  • DIV+CSS虚线边框|CSS虚线下划线及虚线列表教程
  • CSS如何设置html table表格边框样式
  • DIV+CSS中让布局居中_背景图片居中_文字内容居中

代做工资流水公司商丘贷款银行流水制作长沙对公流水办理上饶签证银行流水 办理哈尔滨代办工作收入证明包头查薪资银行流水南京对公流水样本宜昌工资流水app截图打印潮州代办转账银行流水福州入职银行流水报价吉林背调流水公司济宁开流水账单柳州工资银行流水办理宁波背调工资流水代开菏泽工资流水账单制作岳阳日常消费流水查询宁波企业贷流水代办中山企业对公流水多少钱郑州代办转账流水南宁房贷银行流水 代开芜湖背调流水模板上海背调银行流水样本湖州办理银行流水荆州查薪资流水单开封代做公司银行流水保定打印工资流水遵义企业贷流水福州离职证明查询上海办企业贷流水唐山银行流水电子版公司芜湖代做签证银行流水香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声卫健委通报少年有偿捐血浆16次猝死汪小菲曝离婚始末何赛飞追着代拍打雅江山火三名扑火人员牺牲系谣言男子被猫抓伤后确诊“猫抓病”周杰伦一审败诉网易中国拥有亿元资产的家庭达13.3万户315晚会后胖东来又人满为患了高校汽车撞人致3死16伤 司机系学生张家界的山上“长”满了韩国人?张立群任西安交通大学校长手机成瘾是影响睡眠质量重要因素网友洛杉矶偶遇贾玲“重生之我在北大当嫡校长”单亲妈妈陷入热恋 14岁儿子报警倪萍分享减重40斤方法杨倩无缘巴黎奥运考生莫言也上北大硕士复试名单了许家印被限制高消费奥巴马现身唐宁街 黑色着装引猜测专访95后高颜值猪保姆男孩8年未见母亲被告知被遗忘七年后宇文玥被薅头发捞上岸郑州一火锅店爆改成麻辣烫店西双版纳热带植物园回应蜉蝣大爆发沉迷短剧的人就像掉进了杀猪盘当地回应沈阳致3死车祸车主疑毒驾开除党籍5年后 原水城县长再被查凯特王妃现身!外出购物视频曝光初中生遭15人围殴自卫刺伤3人判无罪事业单位女子向同事水杯投不明物质男子被流浪猫绊倒 投喂者赔24万外国人感慨凌晨的中国很安全路边卖淀粉肠阿姨主动出示声明书胖东来员工每周单休无小长假王树国卸任西安交大校长 师生送别小米汽车超级工厂正式揭幕黑马情侣提车了妈妈回应孩子在校撞护栏坠楼校方回应护栏损坏小学生课间坠楼房客欠租失踪 房东直发愁专家建议不必谈骨泥色变老人退休金被冒领16年 金额超20万西藏招商引资投资者子女可当地高考特朗普无法缴纳4.54亿美元罚金浙江一高校内汽车冲撞行人 多人受伤

代做工资流水公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化