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基础 ...
随机推荐
- java File的getLastModified在不同操作系统以下存在差异
java对文件读取改动时间(getLastModified())在不同的操作系统下存在差异 //1.在windows下,返回值是毫秒级别,不存在问题 //2.在Linux下,返回的值是毫秒值,可是会 ...
- 基于 koajs 的前后端分离实践
一.什么是前后端分离? 前后端分离的概念和优势在这里不再赘述,有兴趣的同学可以看各个前辈们一系列总结和讨论: 系列文章:前后端分离的思考与实践(1-6) slider: 淘宝前后端分离实践 知乎提问: ...
- VLC-Android和VLC几个关键宏定义的分析
在用SourceInsight分析VLC-Android源码过程中,有几个宏定义在源代码中一直没有找到出处,比如 HAVE_DYNAMIC_PLUGINS和__PLUGIN__,以及MODULE_NA ...
- 记录ASP.NET页面表单初始状态(主要是为了前台可以根据这个判断页面是否变动了)
把页面表单状态记录到HiddenField中. 这里只提供后台代码, 前台逻辑根据需求自由定义. 存放值的ViewState: protected Dictionary<string, stri ...
- 求一组数字序列的分布情况(java)
最近需要做一个正态分布的函数图像所以要处理一段double序列 写了这个算法 先上效果图: 核心思想: 1先根据步长计算每一个区间 2循环进行判断序列中每个数属于哪个区间 3用一个数组来保存每一个区 ...
- foreach的用法(转)
JDK1.5加入的增强for和循环. foreach语句使用总结增强for(part1:part2){part3}; part2中是一个数组对象,或者是带有泛性的集合. part1定义了一个局部变量, ...
- 屏蔽鼠标右键功能JS
<script language="Javascript"> function hiderightKey(){ return false; } docum ...
- 不同css样式适应不同屏幕大小实现自适应宽度
@media screen and (判断属性){ CSS样式选择器 } 例如: <div class="silder_photo"></div> < ...
- j2ee基础
1.tomcat端口被占用解决方式 使用netstat -anb查看哪个进程占用,禁止掉 修改tomacat使用的端口,在配置文件conf/server.xml 2.web app目录 3.如何建立虚 ...
- oracle 使用基本问题
Oracle服务端口号:1521Database Control URL : http://XXX:1158/em oracle主目录:X:\oracle\product\10.2.0\db_1/** ...