最近在慕课网学习了 网页布局基础固定层效果 ,都是由声音甜美的 婧享人生 老师所录制,视频详细讲解了CSS中position的用法,在此把学习笔记分享给大家。

CSS定位机制

  • 标准文档流(Normal flow)
  • 浮动定位(Floats)
  • 绝对定位(Absolute positioning)

标准文档流

  • 从上到下,从左到右,输出文档内容
  • 由块级元素和行级元素组成

块级元素

  • 从左到右撑满页面,独占一行
  • 触碰到页面边缘时,会自动换行
  • 常见的标签有:div、ul、li、di、dt、p

行级元素

  • 能在同一行内显示
  • 不会改变HTML文档结构
  • 常见的标签有:input、span、label、strong、img

盒子模型

  • 边框(border)
  • 外边距(margin)
  • 内边距(padding)
  • 盒子中的内容(content)
  • 盒子模型尺寸=边框+外边距+内边距+盒子中内容的尺寸

盒子3D模型

  • 第一层:border
  • 第二层:content + padding
  • 第三层:background-image
  • 第四层:background-color
  • 第五层:margin

浮动定位

  • 三个属性:left(左浮动)、right(右浮动)、none(不浮动)
  • 元素会左移、或右移、直到碰到容器为止
  • 虽然脱离了标准文档流,但情况有些特殊,详情见CSS基础知识之float

清除浮动的常用方法

  • clear属性,常用clear:both;(当父包含块缩成一条时无效)
  • 同时设置width:100%(或固定宽度)+overflow:hidden;

相对定位

  • 相对于自身原有位置进行偏移
  • 仍处于标准文档流中
  • 随即拥有偏移属性和z-index属性

绝对定位

  • 建立了以包含块为基准的定位
  • 完全脱离了标准文档流
  • 随即拥有偏移属性和z-index属性

绝对定位-偏移参考基准

  • 未设置偏移量时,无论是否存在已定位的祖先元素,都保持在元素初始位置
  • 已设置偏移量时,无已定位祖先元素,以为偏移参考基准
  • 已设置偏移量时,有已定位祖先元素,以距其最近的已定位祖先元素为偏移参考基准

绝对定位-常见问题

  • 没有设置宽度时,元素的宽度根据内容进行调节
  • 左右布局时,柱子层的高度,一定要大于绝对定位元素的高度

固定定位(也属于绝对定位)

  • 位置固定,不会随滚动条变化
  • 被他遮盖的元素,可以从其下层穿过

固定定位-偏移参考基准

  • 未设置偏移量时,无已定位祖先元素,以浏览器窗口为基准定位
  • 未设置偏移量时,有已定位祖先元素,以祖先元素为基准定位
  • 已设置偏移量时,无论是否存在已定位的祖先元素,均以浏览器窗口为基准定位

欢迎来到 石佳劼的博客,如有疑问,请在「原文」评论区 留言,我会尽量为您解答。


CSS基础知识之position的更多相关文章

  1. CSS基础知识之float

    前段时间写过一篇CSS基础知识之position,当时对float的理解不太准确,被慕课网多名读者指出(原文已修正,如有误导实在抱歉).现对float进行更深入的学习,在此把学习心得分享给大家. 浮动 ...

  2. 〖前端开发〗HTML/CSS基础知识学习笔记

    经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...

  3. CSS基础知识筑基

    01.CSS 简介 CSS 指层叠样式表 (Cascading Style Sheets),对HTML网页内容进行统一外观样式设计和管理,给网页进行各种装饰,让她变得美观,是HTML的化妆师.(Cas ...

  4. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  5. (转)第一天 XHTML CSS基础知识 文章出处:标准之路(http://www.aa25.cn/div_css/902.shtml)

    欢迎大家学习<十天学会web标准>,也就是我们常说的DIV+CSS.不过这里的DIV+CSS是一种错误的叫法,建议大家还是称之为web标准. 学习本系列教程需有一定html和css基础,也 ...

  6. 【CSS】 CSS基础知识 属性和选择

    css基础知识 html的基本标签都是千篇一律的,为了能够个性化外观,就需要进行样式的调整,而css就是专门用来维护,管理样式的一种格式.在html中定义css有三种方法 1. 为标签添加style属 ...

  7. CSS基础知识01

    一.CSS基础知识介绍 1.css是cascading style sheet层叠式样式表的简写 2.css小用法 加粗:font-weight:bold;             正常用:norma ...

  8. Web学习篇之---css基础知识(一)

    css基础知识(一) 1.css样式: 载入css样式有下面四种: 1).外部样式 2).内部样式 3).行内样式 4).导入样式 <link href="layout.css&quo ...

  9. DIV+CSS专题:第一天 XHTML CSS基础知识

    欢迎大家学习<十天学会web标准>,也就是我们常说的DIV+CSS.不过这里的DIV+CSS是一种错误的叫法,建议大家还是称之为web标准.   学习本系列教程需有一定html和css基础 ...

随机推荐

  1. 点滴记录——Centos 6.5 yum安装Ganglia

    转载请说明出处:http://blog.csdn.net/cywosp/article/details/39701141 注:下面操作都仅仅是在一台机器上操作 1. 安装php支持  yum inst ...

  2. Kali下使用libheap

    Kali下使用libheap 在github上,可以libheap用来帮助调试堆溢出.链接见:https://github.com/cloudburst/libheap 但是最后一次更新在一年前了,我 ...

  3. IOS创建单例的两种方法

    1.0  苹果官方写法:  static AccountManager *DefaultManager = nil; + (AccountManager *)defaultManager { if ( ...

  4. IT技术论坛

    http://www.v2ex.com/ http://www.dewen.org/ http://stackoverflow.com/ http://segmentfault.com/ 博客园

  5. struts1:Struts配置文件初解

    struts-config.xml是Struts的核心文件.该文件可配置各种组件,包括,FormBeans,Actions,ActionMappings,全局转发GlobalForwards,数据源D ...

  6. 多线程程序中fork导致的一些问题

    最近项目中,在使用多线程和多进程时,遇到了些问题. 问题描述:在多线程程序中fork出一个新进程,发现新的进程无法正常工作. 解决办法:将开线程的代码放在fork以后.也就是放在新的子进程中进行创建. ...

  7. Go 语言读写 Excel

    Excelize 是 Golang 编写的一个用来操作 Office Excel 文档类库,基于微软的 Office OpenXML 标准.可以使用它来读取.写入 XLSX 文件.相比较其他的开源类库 ...

  8. HttpClient基础教程

    1.HttpClient相关的重要资料 官方网站:http://hc.apache.org/ API:http://hc.apache.org/httpcomponents-client-4.3.x/ ...

  9. Android4大组件

    http://www.cnblogs.com/bravestarrhu/archive/2012/05/02/2479461.html 快乐阅读: http://www.360doc.com/cont ...

  10. PHP记录点击数方法

    1.第一种方法: $id = $_GET['id']; //获取文章ID $sql = "UPDATE base SET hits = hits+1 WHERE id = '$id'&quo ...