css读书笔记3:定位元素
定位元素
要掌握css技术,核心就是要掌握元素定位。
一般把下面这条规则作为所有css样式表的第一条,初始化所有元素的内边距和外边距都为0:
* {padding:0;margin:0;}
盒模型
浏览器为页面中的每个元素生成一个矩形盒子。作为该元素的容器。默认情况下,每个盒子的边框不可见,背景也是透明的,所以我们不能直接看到这些盒子。
元素盒子的3个属性:
边框(border),可以设置边框的宽窄、样式和颜色;
内边距(padding),盒子内容区与边框的间距;
外边距(margin),盒子与相邻元素的间距。
一个盒子有4条边,因此与边框、内边距、外边距相关的属性也各有4个:上(top)、右(right)、下(bottom)、左(left)。
盒子边框有3个相关属性:
宽度;
样式;
颜色。
在声明时,先后顺序没有关系,用空格分隔就可以:
p{border:1px solid #ccc;}
盒子内边距:
盒子内容区与盒子边框之间的距离。
盒子外边距:
垂直外边距——
2个垂直方向的外边距会重叠,也就是说,只有较宽的外边距决定2个元素的距离,较窄的那个不起作用。
水平外边距——
水平相邻的元素,它们的外边距是各自的外边距之和,也就是直接相加。
盒子有多大?
没有设置宽度的盒子——
没有设置宽度的元素,会扩展到填满其父元素的宽度。添加边框、内边距和外边距,会导致内容宽度减少,减少量等于边框、内边距和外边距之和。
设置了宽度的盒子——
为设定了宽度的盒子添加边框、内边距和外边距,会导致盒子扩展得更宽。实际上,盒子的width属性设定的只是盒子内容区的宽度,而非盒子要占据的水平宽度。
浮动与清除
使用float进行浮动的元素,会脱离文档流,也已经不被包含在父元素之内了。可以看成,在一张白纸上用剪子剪去了一块。
强迫父元素包围其浮动的子元素的3种方法:
1.为父元素应用overflow:hidden
2.浮动父元素
3.在父元素内容的末尾添加非浮动元素(清除元素)
定位
对元素盒子使用position属性,可以相对于它在常规文档流中的位置重新定位。
position属性有4个值:
static——
静态定位。默认值;
relative——
相对定位。相对它原来在文档流中的位置重新定位。除了这个元素自己挪动了一下外,这个元素原来占据的空间没有动,其他元素也没动。
p{position:relative;top:25px;left:30px;}
absolute——
绝对定位。绝对定位会把元素彻底从文档流中拿出来,再相对于body进行定位。元素之前占据的空间自然也被回收了。
同时,也可以自己选择相对于的定位上下文。任何想使用绝对定位元素的祖先元素都可以成为它的定位上下文,前提是给该元素设置为相对定位。
p{position:absolute;top:25px;left:30px;}
fixed——
固定定位。固定定位也完全移出了文档流。但固定定位元素是相对于视口的,它不随页面滚动而移动。通常用它来创建不随页面滚动的导航元素。
显示属性
display属性有3个值——
block;
inline;
none
背景
css背景相关属性:
background-color(设置背景颜色)
background-image(设置背景图片)
background-repeat(设置背景重复)
background-position(设置背景位置)
background-size(设置背景尺寸)
background-attachment(设置背景粘附)
css读书笔记3:定位元素的更多相关文章
- css读书笔记2:css工作原理
css就是一种先选择html元素,然后设定选中元素css属性的机制.css选择符合要应用的样式构成一条css规则. 为文档添加样式的3种方法: 1.行内样式,直接写在特定标签的style属性中:2.嵌 ...
- CSS学习笔记之定位
position 有4中不同类型的定位,分别为static.relative.absolute.fixed 1.static 元素框正常生成.块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创 ...
- html+css学习笔记 4[定位]
如何让图1中的div2移动到如图2上的位置: 思路:哪些css命令能够影响盒子显示的位置呢? relative相对定位/定位偏移量 position:relative; 相对定位 a ...
- CSS 小结笔记之定位
定位也是Css中一个非常强大的属性.定位主要是用来移动盒子,将其移动到我们想要的位置. 定位分为两部分 1.边偏移 left | right |top |bottom:偏移大小:(边偏移一般制定上就不 ...
- css读书笔记1:HTML标记和文档结构
块级元素和行内元素:块级元素:上下堆叠,每个块级元素都独立占一行.块级元素的盒子宽度与父元素同宽.行内元素:左右堆叠,只有在空间不足的情况下才会折到下一行显示.行内元素的盒子会收缩包裹其内容,并尽可能 ...
- CSS学习笔记:定位属性position
目录 一.定位属性简介 二.各属性值的具体功能 1. relative 2. absolute 3. fixed 三.三种定位属性的效果总结 参考资料:https://www.bilibili.com ...
- css读书笔记4:字体和文本
字体属性网页中的字体有3个来源:1.用户机器中安装的字体:2.保存在第三方网站上的字体.可以使用link标签把它们链接到页面中:3.保存在子集的web服务器上的字体.可以使用@font-face规则随 ...
- 超越css读书笔记
一.运用所有有效的css选择符 1.属性选择符(基于一个元素是否有属性名称,例如href,或者属性值) 例如:img[alt]{border:1px;} 所有包含alt属性的图像都将会有一个灰色的边框 ...
- CSS读书笔记(3)---清除浮动的几种方法
浮动元素容易造成页面错位现象.下面说说关于清除浮动的几种方法. 首先.先创建一个浮动导致错位的页面. <!DOCTYPE html> <html lang="en" ...
随机推荐
- qbxt十一系列二
PA[题目描述]汉诺塔升级了:现在我们有N个圆盘和N个柱子,每个圆盘大小都不一样,大的圆盘不能放在小的圆盘上面,N个柱子从左到右排成一排.每次你可以将一个柱子上的最上面的圆盘移动到右边或者左边的柱子上 ...
- IOSanimationDidStop
-animationDidStop:finished: 方法中的flag参数表明了动画是自然结束还是被打断,我们可以在控制台打印出来.如果你用停止按钮来终止动画,它会打印NO,如果允许它完成,它会打印 ...
- IOSView翻转扭矩位移
CoreGraphics.h CGAffineTransform rotation = CGAffineTransformMakeRotation(M_PI_2);[xxx setTransform: ...
- 使用source Insight工具创建uboot工程。
首先在linux下面解压uboot的代码.不能在Windows下面解压,因为Windows的文件名是不区分大小写的. 然后,创建网络驱动器,这样就能在Windows下访问linux的文件夹了.方法:通 ...
- 获取DIV与浏览器顶部相聚一定位置之后移动DIV
获取元素(这里定位元素A)距离顶部的高度,接着设定scroll滚动的事件,比如超过那个高度,把A的位置设定为fixed,小于该高度,修改回relative. 方法一: $(function() { ...
- IDoc
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- CUBRID学习笔记 31 通过select创建表
语法 CREATE {TABLE | CLASS} <table_name> [( <column_definition> [,<table_constraint> ...
- 别名alias
alias #查看已设置的别名 alias 别名='原命令' #暂时设定别名(重启失效):alias ls='ls --color=never' unalias 别名 #删除别名 设置别名永久生效 ...
- HUD 2203 亲和串
HUD 2203 亲和串 Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768K (Java/Others) [题目描述 - ...
- Html、Css-----当有文字和图片的时候,需要文字和图片居中,怎么实现?不想文字换行怎么设置
1 当有文字和图片的时候,需要文字和图片居中,怎么实现? <a href=#" target="aa" style="white-space:nowrap ...