盒模型 | CSS权重 | CSS层叠
span{ color:red;}
*{ font-family:"楷体";line-height:2em; font-size:18px;}
盒模型
CSS定义所有的元素都可能拥有像盒子一样的外形和平面空间,即都包含边界、边框、补白、内容区域
网页中的大部分对象,实际呈现形式都是一个个盒子形状对象,页面都是由一个个盒子形状的区域拼合而成的。
盒模型关系到网页设计中排版、布局、定位等操作,任何元素都必须遵循盒模型规则。
包含:margin border padding content(内容)
padding(内边距)
设定页面中一个元素内容到元素边缘(边框)之间的距离
规定了内容到达元素边缘的位置关系
规定了子元素与父元素的位置关系
注* Padding是添加在原有的大小之上的,若想保持元素大小不变,需从元素的原有大小上减去后添加的padding值
border(边框属性)
语法:border:边框宽度 边框风格 边框颜色
border-style:设定边框风格 border-style:none(无)/solid(实现)/dotted(点划线)/dashed(虚线)/double(双线)
border-width:设定边框宽度 border-width:数值 单位px
border-color:设定边框颜色 border-color:颜色
边框类型:(不常用属性值)groove定义3D凹槽边框 ridge定义3D垄状边框 inset outset定义3D边框(都取决于边框颜色)
margin(外边距,外补丁)
设定一个元素所占空间的边缘(边框)到相邻元素边框的距离
四个值:上 右 下 左
三个值:上 左右 下
两个值:上下 左右
一个值:四个方向
margin-top解决办法(三种)
给父元素添加overflow:hidden;
给父元素添加盒模型相关属性(border)
给其中一个元素添加浮动
补充说明
margin总是透明的,padding也是透明的,但padding受背景影响,能够显示背景色或背景图。
margin可以定义负值,但border和padding不支持负值。
如果需要,每一条可见边框都可以定义不同的宽度,但前提是要定义border-style属性为可见样式。
每一个盒子所占页面区域的宽度和高度等于margin外沿的宽度和高度。
浏览器窗口是所有元素的根元素,也就是说html是最大的盒子,也有浏览器把body看作是最大的盒子。
盒模型尺寸
盒子的实际大小(公式)
宽:左右margin+左右border+左右padding+width
高:上下margin+上下border+上下padding+height
CSS权重
类型选择符的权重为:0001
类(CLASS)选择符的权重为:0010
ID选择符的权重为:0100
子选择符(E>F)的权重为:0000
属性选择符的权重为:0010
伪类选择符的权重为:0010
伪元素选择符的权重为:0001
包含选择符的权重为:包含的选择符权重值之和
内联样式的权重为:1000
继承的样式的权重为:0000
CSS层叠
css层叠指的是样式的优先级,当产生冲突时以优先级高的为准。
!important > 行内样式>ID选择器 > 类选择器 > 标签 > 通配符 > 继承 > 浏览器默认属性!important作用是提高指定CSS样式规则的应用优先权
层叠与权重的关系:
层叠是css的一个特性,如果两个相同的属性作用于同一标签,它们会发生层叠。
如果多个复合选择器,同时作用于我们的同一标签,优先级就不好计算了,就要计算权重,通过比较权重,来先出优先级最高的选择器
盒模型 | CSS权重 | CSS层叠的更多相关文章
- 什么是CSS盒模型及利用CSS对HTML元素进行定位的实现(含h5/css3新增属性)
大家好,很高兴又跟大家见面了!本周更新博主将给大家带来更精彩的HTML5技术分享,通过本周的学习,可实现大部分的网页制作.以下为本次更新内容. 第四章 css盒模型 <!DOCTYPE html ...
- 关于ie中实现弹性盒模型-我的css
css3中的弹性盒模型大家都不陌生,但是能否在ie6中实现呢?第三方库中涉及到的页少之又少,也有一部分css框架中支持各种布局,下面给出我用的盒模型样式(为了以后copy方便而已): /******* ...
- CSS:权重和层叠规则决定了其优先级
首先,给大家看一篇关于CSS优先级的示例:http://www.ido321.com/76.html 一.基本的优先级规则 比较同一级别的个数,数量多的优先级高,如果相同即比较下一级别的个数,至于各级 ...
- 盒模型的垂直居中css
https://www.cnblogs.com/zhouhuan/p/vertical_center.html
- 每日分享!介绍Css 盒模型!
如何定义盒模型: 在CSS盒子模型理论中,页面中所有的元素都是看成一个盒子,并且还占据一定的空间. 一个页面是由很多这样的盒子组成的.这些盒子之间都会相会影响,因此我们掌握CSS盒模型相当重要.需要理 ...
- 面试汇总——说一下CSS盒模型
本文是面试汇总分支——说一下CSS盒模型. 基本概念:W3C标准盒模型和IE盒模型 CSS如何设置这两种模型 JS如何获取盒模型对应的宽和高 根据盒模型解释边距重叠 BFC(边距重叠解决方案) 一. ...
- CSS概念 - 可视化格式模型(一) 盒模型与外边距叠加
可以参考<精通CSS 高级WEB标准解决方案>第三章. 可视化格式模型 可视化格式模型要掌握的3个最重要的CSS概念是 浮动.定位.盒模型. 这些概念控制在页面上安排和显示元素的方式, 形 ...
- CSS弹性盒模型flex概念
盒模型分为:标准w3c盒模型.IE盒模型.以及css中的伸缩盒模型. 先说CSS的伸缩盒模型:flex模型是CSS3引入的新的布局模型,是flexible box的缩写,一般称之为弹性盒模型.和CSS ...
- CSS入门之盒模型(六分之四)
盒模型要点知识 务必注意看,这可是前端面试 必定会遇到 的问题. box-sizing 盒模型的主要CSS属性,除继承外有两个值: content-box 这里不再细说历史原因,只说其作用. cont ...
随机推荐
- vue-cli3没有config文件解决方案,在根目录加上vue.config.js文件
module.exports = { /** 区分打包环境与开发环境 * process.env.NODE_ENV==='production' (打包环境) * process.env.NODE_E ...
- vue 父子组件通信详解
这是一篇详细讲解vue父子组件之间通信的文章,初始学习vue的时候,总是搞不清楚几个情况 通过props在父子组件传值时,v-bind:data="data",props接收的到底 ...
- mysql数据迁徙详解
数据迁徙是每个后端都会遇到的工作之一,本文介绍了一些常见的数据迁徙方法与工具 mysqldump:数据结构不变的数据迁徙 导出数据 mysqldump -u root -p DATABASE_NAME ...
- leetcode算法小题(1)
题目描述: 给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标. 你可以假设每种输入只会对应一个答案.但是,你不能重复利用这个数 ...
- 【Maven学习笔记】mvn help:system 命令的说明
mvn help:system 命令的说明 笔者用得是windows 10 x64系统 下载了Maven3,正确配置了系统变量M2_HOME的值,并且添加到Path变量路径当中. 简单来说,Maven ...
- Flask:数据库的建模
学习完模板系统,接下来要研究的就是框架对数据库的操作,不论python的那个框架,直接使用数据库API(redis.pymysql等)都可以进行操作,但是这些操作不够方便,于是就有了ORM 1.Fla ...
- 优化 Git Commit Message
目前很多项目都是通过 Git 进行管理的,Git 每次提交代码的过程中 提交说明 commit message 是必须的.但仅仅必须是不够的,好的提交说明可以帮助我们提高项目的整体质量. 作用与优点 ...
- [考试反思]1002csp-s模拟测试56:凌乱
放假回来状态回升??(玩够了-但是稍困) T1打的不完全对,但是过掉了.很快的想到了二分吧喇叭啦.. 然后T2也挺快想出来了但是挂细节没发现,考试快结束的时候才发现出锅了. 改了过来是正解,但是出题人 ...
- 「考试」$5T$
啊因为最近题实在是好啊,只能四五篇四五篇写了. T1. 括号序列的确简单. 当我们维护左右$cnt$后. 到一个左括号的地方的话. 答案就是:$$\sum\limits_{i=1}^{min(lc,r ...
- NOIP模拟测试33
这次考试很失败. T1sb题,40分钟切了,当我打完对拍全过去上厕所的时候,碰到了yxm. yxm:我又自闭了,没有一点进展. 我:…… yxm:你会做几个? 我(思考再三):T1只会暴力. (我这么 ...