CSS知识点总结

1. 盒模型

可以通过设置box-sizing设置
content-box(标准盒模型):width==content内容区域宽
border-box(IE盒模型):width == border宽度+content内容宽度+padding宽度

2.BFC

块级格式化上下文,是一个独立的渲染区域,让处于 BFC 内部的元素与外部的元素相互隔离,使内外元素的定位不会相互影响。
触发条件:根元素有一下某一个样式则出发bfc

  • position :absolute/fixed
  • display : inline-block/table
  • float
  • overflow !== visible
    BFC的区域不会与float的元素区域重叠
    文字层不会被浮动层覆盖环绕在周围
    计算BFC高度时,浮动元素也参与计算

应用:

  • 防止margin重叠
  • 阻止元素被浮动元素覆盖
  • 清除内部浮动(原理是两个div位于同一个bfc区域)
  • 自适应两栏布局

3.居中布局

  • 水平居中
    行内元素:text-aligin:center
    块级元素:margin:0 auto;
    绝对定位已知宽度:position:absolute;margin-left:-(宽度的一半);left:50%;
    绝对定位和transform:position: absolute;left: 50%;transform:translateX(-50%);
    弹性布局水平居中:diaplay:flex;justify-content: center;
  • 垂直居中
    1.line-height:height;高度设置和盒子一样高
    2.绝对定位和transform:position: absolute;top: 50%;transform:translateY(-50%);
    3.弹性布局水平居中:diaplay:flex;algin-items: center;
    4.绝对定位已知高度:position:absolute;margin-top:-(高度的一半);top:50%;
  • 水平垂直居中
    1.已知宽高100px
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -50px; 
    margin-top: -50px; 

2.弹性布局

    display:flex;
    justify-content:center;
    aligin-items:center;

3.css3的transform属性

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);

4.margin:auto

position:absolute;
top:0;
left:0;
right:0;
bottom:0;
margin:auto;

4.选择器的优先级

1.选择器越具体优先级越大
2.同等优先级写在后面的会覆盖前面的
3.加上!important 优先级最高
4选择器从右向左解析
!important > 行内样式 > #id > .class > tag > * > 继承 > 默认

5.清除浮动解决父级高度塌陷

1.创建一个bfc,例如overflow:hidden(不推荐)
2.用伪类清除浮动

.clearfix::after{
    content:"";
    clear:both;
    display:block;
}
.clearfix{
   zoom:1;//兼容IE
}

6.link和import的区别?

@import只能用于加载css,兼容性不好,IE5以上才可以使用,@import只能等页面加载完之后才可以加载css
link当页面解析时,linky引入的css同步解析,link可以使用js动态导入,无兼容问题,还可以定义RSS,REL等作用

7.CSS预处理器(less/sass/styuls)

css预处理器的原理是:通过webpack编译转换成浏览器可读的css,在编译之前我们可以赋予预处理一些强大的功能

  • 变量
  • 嵌套
  • 循环语句
  • 条件语句
  • 自动前缀
  • 单位转换

8.css3动画

  • 过渡动画:transition
    • transition-proterty:设置过渡效果的名称 如width
    • transition-duration:时间
    • transition-timing-function:曲线
    • transition-delay:延迟时间
  • animation/@keyframes
image.png

9.媒体查询

当浏览器屏幕大于1000px时

@media screen and (min-width:1000px){
     body{
        background:orange;
       }
}

当浏览器屏幕小于1000px

@media screen and (max-width:1000px){
     body{
        background:orange;
       }
}

10.rem em

Q:能谈谈rem的作用吗,与em有什么区别?
A: rem 是html 的font-size大小,一般为 16px, em 是父节点的 font-size 大小,一般 rem 方案解决小屏幕适配问题就是通过 JavaScript 动态改变 html 元素的 font-size 大小进行适配(组件使用 rem 作为度量)

11.弹性布局

display:flex/display:inline-flex
有六个属性设置在容器上

  • flex-direction 决定主轴方向,row水平起点左侧 row-reverse水平起点右侧 column垂直起点上 column-reverse 垂直起点下
  • flex-wrap 可以决定是否换行 nowrap不换行 wrap第一行在上面 wrap-reverse第一行在下面
  • flex-flow 是flex-direction和flex-wrap的简写
  • justify-content 定义了在主轴的X对齐方式 flex-start 左对齐flex-end 右对齐center居中 space-between两端对齐间隔相等 space-around两侧间隔相等,项目之间比两侧大一倍
  • align-items 定义在Y轴的对齐方式 flex-start起点对齐 flex-end 终点对齐 center中间对齐 baseline与第一行文字的基线对齐 strech默认值,如果未设置高度则充满容器
  • aligin-content 定义了多根轴线的对齐方式 flex-start 起点对齐 flex-end 终点对齐 center 中间对齐 space-between 两端对齐 轴线之间平均分布 space-around 线轴两侧间隔相等,线轴之间间隔比两侧大一倍 stretch 默认值 线轴沾满交叉轴
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,658评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,482评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,213评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,395评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,487评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,523评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,525评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,300评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,753评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,048评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,223评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,905评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,541评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,168评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,417评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,094评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,088评论 2 352

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,747评论 1 92
  • CSS 是什么 css(Cascading Style Sheets),层叠样式表,选择器{属性:值;属性:值}h...
    崔敏嫣阅读 1,478评论 0 5
  • 1 介绍一下标准的CSS的盒子模型?与低版本IE的盒子模型有什么不同的? 标准盒子模型:宽度=内容的宽度(cont...
    HelloJames阅读 314评论 0 3
  • 1.CSS基本概念 1.1 CSS的定义 CSS(Cascading Style Sheets)层叠样式表,主要用...
    寥寥十一阅读 1,827评论 0 6
  • 虽说谈写作,我现在也仅仅只能算在“写”的,达不到“作”,所以也不知从何谈起。每天灵光一现突然有什么想法的时候就...
    脑洞舍七阅读 190评论 5 0