CSS基础知识之position
最近在慕课网学习了 网页布局基础 和 固定层效果 ,都是由声音甜美的 婧享人生 老师所录制,视频详细讲解了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的更多相关文章
- CSS基础知识之float
前段时间写过一篇CSS基础知识之position,当时对float的理解不太准确,被慕课网多名读者指出(原文已修正,如有误导实在抱歉).现对float进行更深入的学习,在此把学习心得分享给大家. 浮动 ...
- 〖前端开发〗HTML/CSS基础知识学习笔记
经过一天的学习,把慕课网的HTML/CSS基础知识学完了,笔记整理: 1. 文件结构: HTML文件的固定结构: <html> <head>...</head> & ...
- CSS基础知识筑基
01.CSS 简介 CSS 指层叠样式表 (Cascading Style Sheets),对HTML网页内容进行统一外观样式设计和管理,给网页进行各种装饰,让她变得美观,是HTML的化妆师.(Cas ...
- 前端开发:css基础知识之盒模型以及浮动布局。
前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西? 为什么这个浮动没有效果? 这个问题楼主已经回答了n遍.今天则是把 ...
- (转)第一天 XHTML CSS基础知识 文章出处:标准之路(http://www.aa25.cn/div_css/902.shtml)
欢迎大家学习<十天学会web标准>,也就是我们常说的DIV+CSS.不过这里的DIV+CSS是一种错误的叫法,建议大家还是称之为web标准. 学习本系列教程需有一定html和css基础,也 ...
- 【CSS】 CSS基础知识 属性和选择
css基础知识 html的基本标签都是千篇一律的,为了能够个性化外观,就需要进行样式的调整,而css就是专门用来维护,管理样式的一种格式.在html中定义css有三种方法 1. 为标签添加style属 ...
- CSS基础知识01
一.CSS基础知识介绍 1.css是cascading style sheet层叠式样式表的简写 2.css小用法 加粗:font-weight:bold; 正常用:norma ...
- Web学习篇之---css基础知识(一)
css基础知识(一) 1.css样式: 载入css样式有下面四种: 1).外部样式 2).内部样式 3).行内样式 4).导入样式 <link href="layout.css&quo ...
- DIV+CSS专题:第一天 XHTML CSS基础知识
欢迎大家学习<十天学会web标准>,也就是我们常说的DIV+CSS.不过这里的DIV+CSS是一种错误的叫法,建议大家还是称之为web标准. 学习本系列教程需有一定html和css基础 ...
随机推荐
- Selenium模块化
概述 高内聚低耦合是软件设计的一个基本原则. 内聚:从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做一件事.它描述的是模块内的功能联系. 耦合:各模块之间相互连接的一种度量,耦合强弱取决于模块 ...
- 【计算几何初步-判断是否凸多边形】【HDU2108】Shape of HDU
Shape of HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tot ...
- css系列教程--简介及基础语法和注意事项
css简介:css指的是层叠样式表,cascading style sheets.用来定义html中的dom节点如何展示在页面中的问题.解决了内容与表现形式的分离问题.常见的样式表有外部链接样式表和内 ...
- 微信SDK导入报错 Undefined symbols for architecture i386:"operator delete[](void*)", referenced from:
异常信息: Undefined symbols for architecture i386: "operator delete[](void*)", referenced fro ...
- 为什么JavaScript函数中的参数前面不能加var
首先这里是JavaScript的语法规则. 其次在调用function()函数的时候参数时外部传入的.在传入之前就已经被声明了.没必要在函数参数里声明. 如果想要在函数里用新的参数 function( ...
- xaml控件样式大全(太有用了)C#
地址:链接:http://pan.baidu.com/s/1jGlMyEi 密码:zaeg http://blog.csdn.net/lhx527099095/article/category/943 ...
- MFC CSplitterWnd的用法
用MFC开发一个软件界面中需要拆分多个试图窗口时,使用CSplitterWnd类 CSplitterWnd类主要用在创建一个拆分试图窗口.通常嵌入在框架窗口中(CMainFrame) 创建步骤: 1 ...
- weblogic配置domain和删除domain
weblogic创建域的过程比较简单,但是在创建域之前一定要注意不能存在重名的domain. Domain简单定义为:是一个逻辑管理单元,Domain下面包含着weblogic应用服务器中的所有东西, ...
- javascript中可处理的浮点数的最高精度(和小数的一些小特性)
1.之前在度娘那找了一下关于javascript中可处理的浮点数的最高精度的问题,但找了好久也找不到,于是自己 小小的研究了一下,之前以为是17,后来测到18,再后来又测到19,经过一系列的改写,得到 ...
- php 函数 将数组转换成标量变量:extract()
格式 extract( array var_array [, int extract_type] [,string prefix] ); 例子 $array4 = array('key1'=>' ...