这一章看了之后真是豁然开朗,之前虽然写了圣杯布局和双飞翼布局,有些地方也是模糊的,现在打算总结之后再写一遍。

以下都是从《css权威指南》中摘抄的我认为很有用的说明。

  1. 浮动元素

一个元素浮动时,其他内容会环绕该元素。浮动元素会生成一个块级框,不论这个元素本身是什么。并且浮动元素周围的外边距不会合并。如果要浮动一个非替换元素,必须显式声明width.

浮动元素的几条规则:

1)      浮动元素的左(右)外边界不能超出其包含块(包含快是其最近的块级祖先元素)的左(右)边界。但是负外边距或者浮动元素宽于父元素可能导致浮动元素移到父元素外面

2)      如果一个元素向左浮动,另一个元素已经在那个位置,后放置的元素将挨着前一个浮动元素的右外边界放置。不过,如果一个浮动元素的顶端在所有之前浮动元素的底端下面,他可以抑制浮动到父元素的左内边界。因此,所有浮动内容都是可见的,不必担心两个浮动元素重叠。

3)      一个浮动元素的顶端不能比其父元素的内顶端高。

4)      浮动元素的顶端不能比之前所有浮动元素或块级元素的顶端高。

5)      如果源文档中一个浮动元素之前出现另一个元素,浮动元素的顶端不能比包含该元素所生成框的任何行框的顶端更高。

6)      如果没有足够的空间,浮动元素会被挤到一个新行上。

7)      浮动元素必须尽可能高的放置,其顶端应该与其标记所在行框顶端对齐。左浮动元素必须向左放置的尽可能远,右浮动元素同理。这些规则互相限制。

如果浮动元素与正常流中的内容重叠:

1)      行内框与一个浮动元素重叠时,其边框,背景和内容都在该浮动元素“之上”显示

2)      块框与一个浮动元素重叠时,其边框,背景在浮动元素“之下”显示,而内容在浮动元素“之上”显示。

3)      这些重叠行为与源文档的顺序无关。

  1. 清除浮动

如果声明 h1{ clear: left},那么清除的是h1元素本身左边的浮动。

  1. 定位

position:static(默认值)relative absolute fixed inherit

static:元素正常生成

relative: 元素框偏移某个距离。元素仍保持其未定位前的形状,他原本所占的空间仍保留。

absolute: 元素框从文档中完全删除,并相对于其包含块(一般是position的值不是static的祖先元素,一般会选择一个元素作为绝对定位元素的包含块,将其position指定为relative并且不偏移)定位。元素定位后总会生成一个块级框,不管原来是什么类型的值。

元素绝对定位时,还会为后代元素建立一个包含块,即后代元素可以相对于这个元素再进行绝对定位

fixed: 相对于浏览器窗口进行绝对定位。

1)      绝对定位:

元素绝对定位时,如果top:auto,则定位元素的顶端会相对于未定位前本来的顶端对齐。left和right设置为auto也是一样。元素在水平方向上过度受限时会忽略right值,在垂直方向上过度受限时将忽略bottom值。这条规则对于替换元素和非替换元素都成立

2)      相对定位

相对定位元素相对原来的位置而不是其父元素定位。当元素相对定位时,他会从正常位置移走,但它原来所占的空间不会因此消失。如果遇到过度受限的相对定位,bottom总等于-top,right总等于-left

css权威指南读书笔记-第10章浮动和定位的更多相关文章

  1. css权威指南读书笔记

    今天翻手机,翻到了许久之前看css权威指南时的笔记,遂移到博客中来. 1.属性选择器p.one class名为one的p元素p[class][name] 含有class和name属性的p元素p[cla ...

  2. JavaScript权威指南读书笔记【第一章】

    第一章 JavaScript概述 前端三大技能: HTML: 描述网页内容 CSS: 描述网页样式 JavaScript: 描述网页行为 特点:动态.弱类型.适合面向对象和函数式编程的风格 语法源自J ...

  3. CSS权威指南学习笔记系列(1)CSS和文档

    题外话:HTML是一种结构化语言,而CSS是它的补充:这是一种样式语言.CSS是前端三板斧之一,因此学习CSS很重要.而我还是菜鸟,所以需要加强学习CSS.这个是我学习CSS权威指南的笔记,如有不对, ...

  4. HTTP权威指南读书笔记

    HTTP权威指南笔记 读书有两种境界,第一种境界是将书读薄,另一种是读厚.本篇文章就是HTTP权威指南的读书笔记,算是读书的第一重境界,将厚书读薄.文章对HTTP的一些关键概念做了比较详细的概述,通读 ...

  5. Javascript权威指南阅读笔记--第3章类型、值和变量(1)

    之前一直有个想法,好好读完JS权威指南,便于自己对于JS有个较为全面的了解.毕竟本人非计算机专业出生,虽然做着相关行业的工作,但总觉得对于基础的掌握并没有相关专业学者扎实,正好因为辞职待业等原因,还是 ...

  6. 经典的性能优化最佳实践 web性能权威指南 读书笔记

    web性能权威指南 page 203 经典的性能优化最佳实践 无论什么网络,也不管所用网络协议是什么版本,所有应用都应该致力于消除或减 少不必要的网络延迟,将需要传输的数据压缩至最少.这两条标准是经典 ...

  7. C++ primer plus读书笔记——第10章 对象和类

    第10章 对象和类 1. 基本类型完成了三项工作: 决定数据对象需要的内存数量: 决定如何解释内存中的位: 决定可使用数据对象执行的操作或方法. 2. 不必在类声明中使用关键字private,因为这是 ...

  8. HTTP权威指南读书笔记——第一章(HTTP概述)

    1.HTTP(Hypertext Transfer Protocol,超文本传输协议)是在万维网上进行通信时所使用的协议方案,HTTP是应用层协议,无需关心网络通信的细节,细节交给了传输层协议TCP/ ...

  9. 《JavaScript Dom 编程艺术》读书笔记-第10章

    用JS实现动画~内容包括: 1. 动画基础知识 2. 用动画丰富网页的浏览效果 动画就是让元素的位置随时间而不断变化. 位置: //CSSelement{ position:absolute; top ...

随机推荐

  1. [Alpha]Scrum Meeting#8

    github 本次会议项目由PM召开,时间为4月10日晚上10点30分 时长15分钟 任务表格 人员 昨日工作 下一步工作 木鬼 撰写每日例会报告 撰写每日例会报告 SiMrua 优化模型速度(iss ...

  2. [BZOJ 5155][Tjoi2014]电源插排

    传送门 网上大部分题解都写得是动态开点线段树,然而像\(MiEcoku\)这么懒惰的显然不会去写线段树... \(\color{green}{solution}\) 我们考虑来点骚操作. 线段树维护的 ...

  3. axiso 生产环境跨域配置(可用)

    1.npm install axios 后 在main.js中import import Axios from 'axios'Vue.prototype.$http = Axios 2.请求配置 th ...

  4. Ngin 简单配置文件

    #user nobody; worker_processes ; #error_log logs/error.log; #error_log logs/error.log notice; #error ...

  5. C#集合通论

    前言 写这篇文章的最初动力是来自于一次笔试经历.有一道笔试题大概是这样的:程序使用一个txt文件来存储操作记录.存储记录是多行字符串,每一行代表一次操作记录,格式如下:用户名+操作事项名称+操作时间. ...

  6. thinkPHP5配置nginx环境无法打开(require(): open_basedir restriction in effect. File(/mnt/hgfs/root/tp5/thinkphp/start.php) is not within the allowed path(s)

    今天想把玩一下tp5,结果怎么都无法访问,每次都是报500错误,我把错误提示都打开看到下面的错误 require(): open_basedir restriction in effect. File ...

  7. Linux 下使用yum 命令安装MySQL

    Linux下使用yum安装MySQL,以及启动.登录和远程访问MySQL数据库. 1.yum安装mysql 1. 查看有没有安装包:   yum list mysql*    #移除已经安装的mysq ...

  8. JavaScript设计模式-4.继承和聚合

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. Nginx 反向代理(http转htpps,并支持80端口继续提交post请求)

    项目是一个web server + 多个client的形式,client由用户安装在自己的电脑上 由http升级为https后,我们通过在Nginx做了80端口重定向443的配置,使用户通过访问htt ...

  10. 事务实现,redo,undo,锁

    事务(Transaction)是数据库区别于文件系统的重要特性之一.在文件系统中,如果你正在写文件,但是操作系统突然崩溃了,这个文件就很有可能被破坏.当然,有一些机制可以把文件恢复到某个时间点.不过, ...