优先级:不同选择器具有不同的优先级,优先级高的选择器样式会覆盖优先级低选择器的样式
优先级公式:!imporant>行内样式>id选择器>类选择器>标签选择器>通配符选择器>继承>浏览器默认样式(选中范围越广,优先级越低)
!imporant不要给继承的加,自己有样式,无法继承父级样式
权重叠加计算(0(行内),0(id),0(类),0(标签))
/* (行内, id, 类, 标签) */
/* !important 最高 */
/* 继承: 最低 */
盒子模型:(1)内容的宽度和高度(利用width和height 属性默认设置是盒子内容区域的大小)【属性:width/height 取值: 数字+px】
(2)边框(border-连写形式(复合属性) 如:border: 1px solid red)(bd+tab)(只要一个方向的边框border-方位词)
布局顺序:从外往内,从上往下
每个盒子的样式:(1)宽高 (2)辅助的背景颜色 (3)盒子模型的部分:border、padding、margin(4)其他样式:color、font、text-......
(3)内边距(padding)设置 边框 与 内容区域 之间的距离(内边距(padding)-单方向设置 padding -方位名词)
取值 示例 含义
一个值 padding: 10px; 上右下左都设置为10px
两个值 padding: 10px 20px; 上下设置为10px,左右设置为20px
三个值 padding: 10px 20px 30px; 上设置为10px,左右设置为20px,下设置为30px
四个值 padding: 10px 20px 30px 40px; 上设置为10px,右设置为20px,下设置为30px,左设置为40px
/* 内减模式 */
/* 变成css3的盒子模型,好处:加了border和padding不需要手动减法 */
box-sizing: border-box;
(4)外边距(margin)设置边框以外,盒子与盒子之间的距离(外边距(margin)-单方向设置 margin -方位名词)
取值 示例 含义
一个值 margin: 10px; 上右下左都设置为10px
两个值 margin: 10px 20px; 上下设置为10px,左右设置为20px
三个值 margin: 10px 20px 30px; 上设置为10px,左右设置为20px,下设置为30px
四个值 margin: 10px 20px 30px 40px; 上设置为10px,右设置为20px,下设置为30px,左设置为40px
记忆规则:多值写法:永远都是从上开始顺时针转一圈,如果数不够,看对面
清除默认内外边距
* {
margin: 0;
padding: 0;
}
/* 去掉列表的符号 */
ul {
list-style: none;
}
<!-- 布局顺序:从外到内先宽高背景色,放内容,调节内容的位置,控制文字细节 -->
外边距折叠现象——(1)合并现象:垂直布局的块级元素,上下margin会合并(最终两者距离为margin最大值)解决办法:避免就好,只给一个盒子设置margin即可
(2)塌陷现象:互相嵌套的块级元素,子元素的margin-top会作用在父元素上,导致父元素一起向下移动
解决方法:
1. 给父元素设置border-top 或者 padding-top(分隔父子元素的margin-top)
2. 给父元素设置overflow:hidden
3. 转换成行内块元素
4. 设置浮动
<!-- 行内元素 内外边距:margin padding -->
<!-- 如果想要通过margin和padding改变行内标签的垂直位置,无法生效 -->
<!-- 行内标签的margin-top和bottom不生效 -->
<!-- 行内标签的padding-top和bottom不生效 -->
如果需要给垂直方向加边距 可以使用line-height
随机推荐
- http协议与tcp协议的理解
1.区别 tcp协议是对应于传输层,http协议是对应于应用层,从本质上来说,二者是没有可比性的.http协议是建立在tcp协议基础之上的,当浏览器需要从服务器获取网页数据的时候,会发送一次http请 ...
- 使用navicat进行数据传输报错ERROR: permission denied for table xxx
数据库我使用的是pgsql,在进行数据传输时报错ERROR: permission denied for table demo1,这里的原因是权限问题哦,所以可以给定当前用户更大权限,我这里则是直接切 ...
- python查找文件、移动、重命名、压缩
在文件同级目录下存在sourcefile.targetfile两个文件夹,源文件放在sourcefile import os import shutil Apath = os.path.dirname ...
- 【Frida】调试js代码
方法一attach启动 js代码动态注入app,app需要保持运行状态 # coding: utf-8 import sys import frida app_name = "猿人学APP& ...
- kafka数据顺序一致
问题: kafka如何发送顺序消息 方案:kafka可以通过partitionKey,将某类消息写入同一个partition,一个partition只能对应一个消费线程,以保证数据有序. 也就是说生产 ...
- ps 合并两张图片为一张
打开PS并点击左上角的"文件":之后再点击"打开"(也可以按下快捷键"Ctrl+O"),打开文件选择窗口. 2 在打开的文件选择窗口中,找到 ...
- docker创建etcd
创建docker-compose.yml version: "3.5" services: etcd: hostname: etcd image: bitnami/etcd:3 d ...
- 最新2019Java调用百度智能云人脸识别流程
首先先注册账户 https://console.bce.baidu.com/?fromai=1#/aip/overview 点击链接 有账户直接登录 如无 则注册 进入控制台后 点击人脸识别 随便选 ...
- sequlizejs学习笔记整理
1.事务 try { const transaction = await sequelize.transaction(); const user = await User.findOne(..., { ...
- C语言源文件如何编译为exe
先观看https://blog.csdn.net/u014772182/article/details/43348465来配置gcc环境随后在cmd中cd到目标文件夹gcc main.c -o ste ...