定位元素
要掌握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:定位元素的更多相关文章

  1. css读书笔记2:css工作原理

    css就是一种先选择html元素,然后设定选中元素css属性的机制.css选择符合要应用的样式构成一条css规则. 为文档添加样式的3种方法: 1.行内样式,直接写在特定标签的style属性中:2.嵌 ...

  2. CSS学习笔记之定位

    position 有4中不同类型的定位,分别为static.relative.absolute.fixed 1.static 元素框正常生成.块级元素生成一个矩形框,作为文档流的一部分,行内元素则会创 ...

  3. html+css学习笔记 4[定位]

    如何让图1中的div2移动到如图2上的位置: 思路:哪些css命令能够影响盒子显示的位置呢? relative相对定位/定位偏移量 position:relative;  相对定位         a ...

  4. CSS 小结笔记之定位

    定位也是Css中一个非常强大的属性.定位主要是用来移动盒子,将其移动到我们想要的位置. 定位分为两部分 1.边偏移 left | right |top |bottom:偏移大小:(边偏移一般制定上就不 ...

  5. css读书笔记1:HTML标记和文档结构

    块级元素和行内元素:块级元素:上下堆叠,每个块级元素都独立占一行.块级元素的盒子宽度与父元素同宽.行内元素:左右堆叠,只有在空间不足的情况下才会折到下一行显示.行内元素的盒子会收缩包裹其内容,并尽可能 ...

  6. CSS学习笔记:定位属性position

    目录 一.定位属性简介 二.各属性值的具体功能 1. relative 2. absolute 3. fixed 三.三种定位属性的效果总结 参考资料:https://www.bilibili.com ...

  7. css读书笔记4:字体和文本

    字体属性网页中的字体有3个来源:1.用户机器中安装的字体:2.保存在第三方网站上的字体.可以使用link标签把它们链接到页面中:3.保存在子集的web服务器上的字体.可以使用@font-face规则随 ...

  8. 超越css读书笔记

    一.运用所有有效的css选择符 1.属性选择符(基于一个元素是否有属性名称,例如href,或者属性值) 例如:img[alt]{border:1px;} 所有包含alt属性的图像都将会有一个灰色的边框 ...

  9. CSS读书笔记(3)---清除浮动的几种方法

    浮动元素容易造成页面错位现象.下面说说关于清除浮动的几种方法. 首先.先创建一个浮动导致错位的页面. <!DOCTYPE html> <html lang="en" ...

随机推荐

  1. 查看linux发行版本、内核版本命令

    查看linux发行版本: $lsb_release -a 查看linux内核版本: $cat /proc/version 或 $uname -a

  2. SqlSever基础 一个条件group by 一列有两个内容,分组并查看每个内容有多少行,并用as起名

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  3. Tar命令用法详解

    tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...

  4. 我的android学习经历20

    WebView的使用 WebView既可以和Intent一样实现界面跳转一样,让系统浏览器打开页面,也可以在应用程序中打开页面 注意用WebView时,需要注册网络服务 代码如下: package c ...

  5. [转]Unity3D协程介绍 以及 使用

    作者ChevyRay ,2013年9月28日,snaker7译  原文地址:http://unitypatterns.com/introduction-to-coroutines/ 在Unity中,协 ...

  6. Python学习遇到的问题

    UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position

  7. android tablelayout 显示图片

    当在tablelayout中显示图片时,设置imageView为固定大小时,会出现divide by zero 错误 将LayoutParams 改为 TableRow.LayoutParams即可 ...

  8. Spring对hibernate的事物管理

    把Hibernate用到的数据源Datasource,Hibernate的SessionFactory实例,事务管理器HibernateTransactionManager,都交给Spring管理.一 ...

  9. iOS添加Prefix Header

    1. 添加Prefix Header 注: Xcode 6苹果默认去掉prefix Header, 用以提高原文件的复用性, 便于迁移. 并且可以一定程度上减少Build Time. 解决办法: (1 ...

  10. web设计经验<四>设计师必备的20条设计黄金法则

    编者按:以下内容摘自<美国视觉设计学院之完形设计>,新手可以多看这些法则,并运用到你的设计过程中,防止自己做出甲方式审美的作品. 一.必须有一个概念 设计从创意开始.这可能是非常不确定的— ...