CSS复习

HTML语义化

  1. 有利于SEO(搜索引擎优化)
  2. 便于阅读,修改
  3. 对盲人等不方便浏览网页的人来说比较方便

盒模型

盒模型有border-box和content-box两种,默认是content-box

  1. content-box: 设置的宽度就是内容宽度,整个盒子的宽度还要加上padding、border
  2. border-box: 设置的宽度就是内容宽度+padding+border,因此内容宽度的实际大小要减去border和padding

margin合并

两个相邻的元素,分别设置margin,它们的间距不是两个margin的和,而是由较大的margin决定

margin 负值

  1. top & left: 元素向上 or 向左拖拽
  2. bottom & right: 元素本身不变,下边元素上移 or 右边元素左移

BFC

Block formatting context 块级格式化上下文

形成独立的渲染区域

内部元素的渲染不会影响外界

形成BFC常见的条件

  1. 浮动元素 float 不是 none
  2. 绝对定位元素 position是absolute或者fixed
  3. 块级元素 overflow 不是 visible
  4. flex元素
  5. inline-block元素

应用场景:清除浮动等...

圣杯布局

目的:

  1. 两侧内容宽度固定,中间内容宽度自适应
  2. 三栏布局,中间一栏最先加载,渲染出来

实现双飞翼布局

null

flex布局

flex常用语法

父级容器相关

属性名 内容 作用
flex-direction 主轴方向 水平 or 垂直
justify-content 主轴上的对齐方式 开始对齐,结束对齐,居中对齐,两端对齐
align-items 交叉轴上的对齐方式 开始对齐、结束对齐、居中对齐
flex-wrap 是否换行

子元素相关

align-self: 子元素在交叉轴上的对齐方式,可以覆盖align-items

absolute 和 relative

  1. relative定位 相对于 自身 定位
  2. absolute 定位 相对于 最近的一层父级定位元素 定位

    定位元素 relative absolute fixed 或 body

水平居中

  • 行内 inline 元素 text-align: center
  • 块级 block 元素 margin: 0 auto
  • absolute定位元素 left: 50%; margin-left: 负值;
<!-- 如果是上下左右居中 -->
<style>
.parent {
display flex;
} .son {
margin: auto;
}
</style> <div class="parent">
<div class="son></div>
</div>

垂直居中

  • 行内元素: line-height的值等于height的值
  • absolute元素
    • top: 50% + margin-top 负值 (需要知道尺寸)
    • transform: translate(-50%, -50%); (可以不考虑尺寸,css3,兼容性有问题)
    • top, left, bottom, right = 0 + margin: auto

line-height继承时的坑

line-height继承,如果是百分比的话,需要先算出结果,然后再继承。

什么是rem

  • px 绝对长度单位
  • em 相对长度单位,相对于父元素
  • rem 相对长度单位,相对于html根元素

HTML/CSS复习的更多相关文章

  1. html+css复习之第3篇 | jquery | bootstrap

    html+css复习之第3篇 | jquery  | bootstrap

  2. 李洪强和你一起学习前端之(8)CSS复习

    今天是2017年3月24日周五 每一天都是余生当中最好的一天,珍惜当下. CSS基础复习 1 复习 1.1Css第一天 css层叠样式表 基础选择器 标签选择器 p{属性: 值;} 类选择器 .自定义 ...

  3. CSS复习

    CSS 选择器 p.into  表示带有into类的p元素 伪类: a)      first-line b)      last-line 伪元素: :before  能在指定的元素前添加内容(创造 ...

  4. css复习笔记

    margin: 1. 当有三个值时第一个值为上,第二个值为左右,第三个值为下. 2.margin外边距折叠,水平没有,垂直会折叠,且折叠后以两者最大值为准.另外,当一个元素包裹另一元素时也会发生折叠. ...

  5. html+css复习之第1篇

    1. 保证在火狐浏览器字体<12px,苹果横屏的时候字体显示大小还是12px html { background: #fff; -webkit-text-size-adjust: 100%; - ...

  6. html+css复习之第2篇 | javascript

    1. java 中定义数组和对象: 数组(Array)字面量 定义一个数组: [40, 100, 1, 5, 25, 10] 对象(Object)字面量 定义一个对象: {firstName:&quo ...

  7. CSS复习第一天(简单规范)

    1.有意义的html     优点:与表现性的页面相比,有意义的页面更容易后期的处理与维护.                便于浏览器与屏幕阅读器识别.                更加便于调试样式 ...

  8. css复习内容

    有时候 自己动手写一遍比想十遍都有用 <!DOCTYPE html><html> <head> <meta charset="utf-8" ...

  9. H5+CSS复习笔记(全)

    1.自结束标签和注释 通常标签都是成对出现,如<h1></h1>,<div></div>等等.但是又些标签是没有结束标签的,成为自结束标签,如<i ...

  10. Day6:html和css

    Day6:html和css 复习 margin: 0; padding: 0; <!DOCTYPE html> <html lang="en"> <h ...

随机推荐

  1. 全面升级!揭秘阿里云智能Logo设计的AI黑科技

    简介: 免费体验!阿里云智能logo设计一直致力于用AI技术,帮助更多有设计需求的朋友能"多快好省"地做logo,让"设计logo"这件有门槛的事情,通过智能工 ...

  2. Quick BI的可视分析之路

    简介: Quick BI是专为云上用户量身打造的智能数据分析和可视化BI产品,帮助企业快速完成从传统的数据分析到数据云化+分析云化的转变,将企业的业务数据产出后以最快的速度被推送到各组织侧消费使用.本 ...

  3. Nacos 开源、自研、商业化三位一体战略解读

    简介: Nacos作为整个阿里云原生三位战略中的核心组成部分,我们在2018年以Configserver/VIPServer/Diamond为基础通过Nacos开源输出阿里十年沉淀的注册中心和配置中心 ...

  4. Region-区域

    定义Region的方式有两种: 一种是在XAML定义 RegionManager.RegionName(XAML) 一.View代码 1 <Viewbox Grid.Column="1 ...

  5. 在 Visual Studio 中规范化文件编辑

    1 配置文件存放 生成了对应的 .editorconfig 文件,存放在仓储的根目录.即对整个仓储所有的用 VS 作为 IDE 编辑的项目生效. 同时支持子目录有自己的 .editorconfig 文 ...

  6. vue-cli快速搭建项目的几个文件(三)

    ==========有加载动画的app.vue=========== <template>   <div id="app">     <keep-al ...

  7. 简化 Python 日志管理:Loguru 入门指南

    简化 Python 日志管理:Loguru 入门指南 在开发和维护软件项目时,高效的日志管理系统对于监控应用程序的行为.调试代码和追踪异常至关重要.Python 的标准日志模块虽然功能强大,但其配置和 ...

  8. 程序员天天 CURD,怎么才能成长,职业发展的思考(2)

    接着上一篇:程序员天天 CURD,怎么才能成长,职业发展思考 上一篇写到了用年限来谈程序员的发展,在 4 - 6 年这个时间段需要做的一些事情,接着写这个时间段的. 第 4.5 年时候,你可能会做一些 ...

  9. 08. rails 创建user控制器-用户添加

    创建控制器 如果创始的数据模型是对应一张表,那么要使用复数的形式 例如给users表创建一个控制器 rails g controller users 路由 config/routes.rb里添加 re ...

  10. js图片懒加载,在不做分页的情况下的解决方案

    Intersection Observer API 1.注意点 一般都是后端返回数据, 用 this.$nextTick(() => { this.handleScroll(); }); 确保d ...