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" ...
随机推荐
- 四、java中的数组
总结: 数组的特点: 1.存储的数据类型单一. 2.数组的大小不可变. 3.Arrays工具类.
- Python import 指定目录中的模块
#coding=utf-8 import os,sys sys.path.append('test') # 下级目录(text) parentdir = os.path.dirname(os.path ...
- ubuntu vi/vim编辑器必知必会
转载出处:http://blog.csdn.net/xiajun07061225/article/details/7039413 一.我们为什么要学习vim编辑器? Linux的命令行界面下面有非常多 ...
- ettercap
作者: 官网:http://ettercap.github.io/ettercap/ 源码:https://github.com/Ettercap/ettercap 功能:arp欺骗
- getting started with building a ROS simulation platform for Deep Reinforcement Learning
Apparently, this ongoing work is to make a preparation for futural research on Deep Reinforcement Le ...
- python_way ,day22 tonardo
python_way day22 1.tonardo 2.cookie 3.api认证 一.tonardo: a.tonardo 初识 #!/usr/bin/env python3# Created ...
- hiho #1050 : 树中的最长路 树的直径
#1050 : 树中的最长路 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 上回说到,小Ho得到了一棵二叉树玩具,这个玩具是由小球和木棍连接起来的,而在拆拼它的过程中, ...
- UpdatePanel的简单用法(转)
微软AJAX虽然是过时的玩意,但是得维护公司之前的老项目,转载看看. 局部更新是ajax技术的最基本,也是最重要的用法,今天大概把asp.net ajax中的局部更新控件 updatepanel的用法 ...
- ToStringBuilder 学习
一.简介与引入 1.ToStringBuilder.HashCodeBuilder.EqualsBuilder.ToStringStyle.ReflectionToStringBuilder.Co ...
- iOS - AVPlayer 音视频播放
前言 NS_CLASS_AVAILABLE(10_7, 4_0) @interface AVPlayer : NSObject @available(iOS 4.0, *) public class ...