1.选择器

参考链接:十分钟搞定CSS选择器-Samaritans  CSS选择器笔记-阮一峰  CSS选择器-w3school  MDN

参考书籍:《CSS高效开发指南》

2.布局

2.1 盒模型

颜色:内边距总是跟元素的背景色一样,所以当你设置背景色时,你会发现背景色在元素本身和内边距上都生效了。外边距总是透明的。

作用:内边距和边框主要的作用是装饰;外边距主要用于布局,目的是控制元素之间的距离。

边距(margin)重叠:边距重叠时,会淘汰边距较小的一个。边距重叠只发生在边距属性中,补白(padding)和边框都不会发生重叠现象。
注意:只有在普通文档流中的块级元素才会发生边距重叠。行内元素、浮动元素和绝对定位元素都不会产生重叠。
box-sizing: content-box|border-box|inherit;

盒模型中,默认box-sizing:content-box; 元素的边框和内边距会撑开元素。

box-sizing: border-box:用来改变默认的CSS盒模型对元素宽高的计算方式,使得元素的内边距和边框不再会增加它的宽度。

 
参考链接:MDN  CSS3 box-sizing属性
参考书籍:《CSS+DIV网页布局》
 
 2.2 块级元素和行内元素
        常用的块级元素:blockquote、div、fieldset、form、h1-h6、hr、dl、ol、ul、p、pre
      常用的行内元素:a、b、span、cite、em、i、img、input、label、select、br、strong、textare
 
        块级元素:垂直排列,会开始新的一行并且尽可能地撑满容器;高度、行高及上下边都可控制;其宽度在默认情况下与其父元素的宽度一致。可以设置width属性来改变其宽度。
        行内元素:水平排列,不会打乱段落布局,可以在一行内显示;高度及上下边距都不可控制;宽度就是其包含的文字或者图片的宽度,设置width属性不生效。

 2.3 浮动

清理浮动两种方式:

  1. 利用 clear 属性,清除浮动;

  2. 使父容器形成 BFC(Block Formatting Context)

 清除浮动可以理解为打破横向排列。其语法:clear : none | left | right | both

取值:

none  :  默认值。允许两边都可以有浮动对象

left   :  不允许左边有浮动对象

right  :  不允许右边有浮动对象

both  :  不允许有浮动对象

    对于CSS的清除浮动(clear),一定要牢记:这个规则只能影响使用清除的元素本身,不能影响其他元素。
    clear:left属性只是消除其左侧div浮动对它自己造成的影响,而不会改变左侧div甚至于父容器的表现。父容器看到有一个非浮动、普通流的子元素元素,会将其包围,使高度不再塌陷。
 
  BFC(Block Formatting Context)
  BFC(Block formatting context)直译为"块级格式化上下文"。它是一个独立的渲染区域,只有Block-level box参与, 它规定了内部的Block-level Box如何布局,并且与这个区域外部毫不相干。
 

参考链接:经验分享:CSS浮动(float,clear)通俗讲解   CSS清浮动处理(Clear与BFC)

    前端精选文摘:BFC 神奇背后的原理   CSS深入理解流体特性和BFC特性下多栏自适应布局

2.4 定位

   默认值(positin:static):在CSS中为元素定义 top、left、right、bottom、z-index 都不会生效

    相对定位(positon:relative):指相对于文档流中的其他已定义的元素位置进行定位,表现和默认值一样,只不过可以设置偏移量和 z-index 来控制相对于其正常位置进行的偏移。但是其他的元素不会调整位置来弥补它偏离后剩下的空隙。
    说明:所有元素的定位(position)都默认为 static,什么都不写就是相对定位,而使用 position:relative 在不设置 top/left/z-index 等值的情况下和默认值表现是一样的。
    绝对定位(position:absolute):相对上一个不为 static 的父元素(即被positioned的元素)进行绝对定位。如果绝对定位的元素没有“positioned”祖先元素,absolute 将相对于整个 html 文档进行绝对定位,并且会随着页面滚动而移动。
    绝对定位的元素有以下几个特点:
  • 块级元素的宽度在未定义时不再为100%,而是根据内容自动调整
  • 在不定义 z-index 的情况下,absolute 元素会覆盖在其他元素之上
  • 它会脱离正常的文档流,不再占据空间,类似于浮动后的效果
    固定定位(position:fixed):生成绝对定位的元素,相对于浏览器窗口进行定位。即不论网页如何滚动,该元素始终停留在屏幕的某个位置上。  
 
 
参考链接:学习CSS布局
参考书籍:《CSS高效开发实战》 
 

CSS知识点总结的更多相关文章

  1. 这些HTML、CSS知识点,面试和平时开发都需要 No1-No4

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  2. 这些HTML、CSS知识点,面试和平时开发都需要 No5-No7

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  3. 这些HTML、CSS知识点,面试和平时开发都需要 No8-No9

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  4. 这些HTML、CSS知识点,面试和平时开发都需要 No10-No11

    系列知识点汇总 1.基础篇 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5- ...

  5. css知识点

    css知识点 一.盒模型知识 border: 边框 border-width:边框的宽度 border-color:边框的颜色 border-style:边框的线型 border-top:上边框 bo ...

  6. CSS知识点集锦

      CSS知识点集锦 CreateTime--2016年9月29日09:43:10Author:Marydon UpdateTime--2017年3月21日08:03:13 2.CSS样式优先级问题 ...

  7. 这些HTML、CSS知识点,面试和平时开发都需要 No8-No9(知识点:媒体操作、构建表单)

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  8. 这些HTML、CSS知识点,面试和平时开发都需要 No10-No11(知识点:表格操作、代码编写规则)

    系列知识点汇总 1.基础篇 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5- ...

  9. 这些HTML、CSS知识点,面试和平时开发都需要 No5-No7(知识点:文字设置、设置背景、数据列表)

    系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) 这些HTML.CSS知识点,面试和平时开发都需要 No5-No7(知识 ...

  10. 这些HTML、CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML、CSS、盒子模型、内容布局)

    这些HTML.CSS知识点,面试和平时开发都需要 No1-No4   系列知识点汇总 这些HTML.CSS知识点,面试和平时开发都需要 No1-No4(知识点:HTML.CSS.盒子模型.内容布局) ...

随机推荐

  1. 转载——PLSQL developer 连接不上64位Oracle 解决办法

    前两天刚下载了oracle 11g 64位的最新版本,安装成功之后,再安装PLSQL.结果使用PLSQL访问数据库时,死活连接不上.报错如下: Could not load "……\bin\ ...

  2. 知名杀毒软件Mcafee(麦咖啡)个人版 资源汇总兼科普(来自卡饭)

    虽然早已不是用咖啡了,但我也实时关注的咖啡的一举一动,潜水看帖日久,发现小白众多,好多有价值的帖子淹没于帖海当中,甚是惋惜.     我有如下建议      1.咖啡区管理层,能否吧一些优秀的资源教程 ...

  3. LCA-倍增法(在线)

    原文:http://www.tuicool.com/articles/N7jQV32 1. DFS预处理出所有节点的深度和父节点 inline void dfs(int u) { int i; for ...

  4. mysql给定一个随机数

    )) 给定一个1-50中间的随机数

  5. Python中的sorted函数以及operator.itemgetter函数 【转载】

    operator.itemgetter函数operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号(即需要获取的数据在对象中的序号),下面看例子. a = [1,2 ...

  6. POJ 3264 Balanced Lineup 线段树 第三题

    Balanced Lineup Description For the daily milking, Farmer John's N cows (1 ≤ N ≤ 50,000) always line ...

  7. Linux-Unix版本介绍

    转自: http://blog.163.com/li_zhuangs/blog/static/195698098201182411360635/ < DOCTYPE html PUBLIC -W ...

  8. 中南民航如何利用K2BPM构建业务流程?

    广州市中南民航空管通信网络科技有限公司成立于2004年9月,负责民航中南地区通信网络.电报网络的建设与维护.民航空管信息系统的开发与维护.公司拥有一支技术精湛的研发队伍,在信息技术领域领跑于民航空管行 ...

  9. High Performance Django

    构建高性能Django站点   性能 可用 伸缩 扩展 安全 build 1.审慎引入第三方库(是否活跃.是否带入query.是否容易缓存) 2.db:减少query次数 减少耗时query 减小返回 ...

  10. Portlet和servlet的区别

    相同之处 l 都是java技术开发的web组件 l 都是由特定的容器在管理 l 都可以动态产生各种内容 l 生命周期都是由容器管理 l 和客户端的交互通过request/response机制 不同之处 ...