HTML学习笔记Day4
一、浮动属性
1.首先要知道,div是块级元素,在页面中独占一行,自上而下排列,也就是传说中的流;
无论多么复杂的布局,其基本出发点均是:“如何在一行显示多个div元素”;
显然标准流已经无法满足需求,这就要用到浮动;
浮动可以理解为让某个div元素脱离标准流,漂浮在标准流之上,和标准流不是一个层次;
2.页面浮动多个div的规律:
假如某个div元素A是浮动的,如果A元素上一个也是浮动的,那么A元素会跟随在上一个元素的后边(如果一行放不下则两个元素,那么A元素会被挤到下一行);如果A元素上一个元素是标准流中的元素,那么A的相对垂直位置不会改变,也就是说A的顶部总是和上一个元素的底部对齐;
div的顺序是HTML代码中div的顺序决定的;
靠近页面边缘的一端是前,远离页面边缘的一端是后;
经过上边的学习,可以看出:元素浮动之前,也就是标准流中,是纵向排列的,而浮动之后可以理解为横向排列
3.语法:float:none(默认值不浮动)/left(左浮动)/right(右浮动)
4.浮动的目的:就是让纵向排列的元素横向排列,也就是能让元素和元素并排显示
5.显示规则:浮动对象会向左或者向右移动直到遇到边框(border)、内补丁(padding)、外补丁 (margin)或者另一个块元素为止
6.float:定义网页中其他文本如何围环绕该元素显示
7.三种情况float不生效:a.当宽+宽大于父级元素的宽时;b.只给一个元素加了float时;c.单词写错
8.清除浮动语法:clear:none(默认值允许两边浮动)/left(不允许左边有浮动)/right(不允许右边有浮动)/both(不允许有浮动对象)
注:对于css的清除浮动(clear),一定要记住:这个规则只能影响使用清除的元素本身,不能影响其他元素,清除浮动可以理解为打破横向排列。
二、盒模型
1.盒模型:盒模型是css布局的基石,它规定了网页元如何显示以及元素间相互关系,css定义所有的元素都可以像盒子一样的外形和平面空间,即包含内容区、填充区(padding)、边框(border)、边界(margin),这就是盒模型。
2.填充(padding):padding是指在内容与边框的空白区域,也称补白。
作用:1)用来调整子元素与父元素的位置关系;
2)调整内容在容器中的关系;
注:padding写在父元素上
用法:1)padding值时额外加在元素原有大小之上的,想要原来尺寸不变,加完padding值后在原始数值上减去加上的padding值;
2)可单独设置一方向填充,如:
padding-left:10px;padding-right:10px;padding-bottom:10px;padding-top:10px
padding:10px;定义元素上下左右填充值都为10px;
padding:10px 20px;定义元素上下填充值为10px,左右填充值为20px;
padding:10px 20px 30px;定义元素上填充值为10px,左右填充值为20px,下填充值为30px;
padding:10px 20px 30px 40px;定义元素上填充值为10,右填充值为20px,下填充值为30px,左填充值为40px;
补充:1)padding属性处于内容与边框之间,我们可以利用该属性设置图片与边框之间的空隙;
2)背景图不受padding值影响
3.边界:margin,在边框外边的空白区域,被称为边界。
作用:用来调整并列元素间的位置关系;
用法:1)可单独设置一方向填充,与padding类似
margin-left:10px;margin-right:10px;margin-top:10px;margin-bottom:10px;
2)margin:0 auto;定义元素上下边界为0,且在浏览器中横向居中
margin可以写负值;例如:margin:-10px;
3.边框:border
作用:网页中很多修饰性的线条都是由边框来实现
边框宽度:border-width:2px;
边框样式:border-style:solid(实线)/dotted(点)/dashed(虚线)/double(双边线)/none(取消边框);
边框颜色:border-color:#fff;
用法:1)缩写:border:2px solid #fff;
2)可单独设置一方边框:border-left/right/top/bottom;
4.盒子实际占有的宽度区域:宽=左右margin+左右border+左右padding+width
盒子实际占有的高度区域:高=上下margin+上下border+上下padding+height
注:以上是标准盒模型所占有区域的实际大小
HTML学习笔记Day4的更多相关文章
- OpenCV图像处理学习笔记-Day4(完结)
OpenCV图像处理学习笔记-Day4(完结) 第41课:使用OpenCV统计直方图 第42课:绘制OpenCV统计直方图 pass 第43课:使用掩膜的直方图 第44课:掩膜原理及演示 第45课:直 ...
- Python学习笔记 - day4 - 流程控制
Python流程控制 Python中的流程控制主要包含两部分:条件判断和循环. Python的缩进和语法 为什么要在这里说缩进和语法,是因为将要学习的条件判断和分支将会涉及到多行代码,在java.c等 ...
- Python学习笔记——Day4
字符串操作 string典型的内置方法: count() center() startswith() find() format() lower() upper() strip() replace() ...
- python学习笔记-Day4(2)
正则表达式 语法: import re #导入模块名 p = re.compile("^[0-9]") #生成要匹配的正则对象 , ^代表从开头匹配,[0-9]代表匹配0至9的任意 ...
- python学习笔记-day4笔记 常用内置函数与装饰器
1.常用的python函数 abs 求绝对值 all 判断迭代器中所有的数据是否为真或者可迭代数据为空,返回真,否则返回假 any ...
- python 网络爬虫与信息提取 学习笔记day4
正则表达式简介: 简洁表示一组字符串的特征或者模式,在文本处理中十分常用,主要应用于字符串匹配中 1. 通用的字符串表达框架 2. 简洁表达一组字符串的表达式 3. 针对字符串表达简洁和特征思想 ...
- JS学习笔记Day4
一.什么是函数 将反复使用的功能代码,封装成一独立的模块,这个模块叫做函数 二.封装函数的好处 1.一次封装,多次使用 2.使程序可控 三.函数的分类:内置()函数和自定义函数 四.函数的数据类型(f ...
- python学习笔记-Day4(1)
迭代器 迭代器是访问集合元素的一种方式.迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器只能往前不会后退,不过这也没什么,因为人们很少在迭代途中往后退.另外,迭代器的一大优点是 ...
- sqli-labs学习笔记 DAY4
DAY 4 sqli-labs lesson 23 与lesson 1一样,只不过屏蔽了#和–注释符. 报错型注入: 爆库:id=99' UNION SELECT 1,extractvalue(1,c ...
随机推荐
- Promise是什么?
一. Promise是什么? Promise是一种异步操作的解决方案,将写法复杂的传统的回调函数和监听事件的异步操作,用同步代码的形式表达出来. 避免了多级异步操作的回调函数嵌套. Promise最早 ...
- Java使用RabbitMQ之整合Spring(消费者)
依赖包: <!--RabbitMQ集成spring--> <!-- https://mvnrepository.com/artifact/org.springframework.am ...
- Web API 2 使用Entity Framework Part 1.
创建项目 打开Visual Studio,选择ASP.NET Web Application,项目名称BookService并点击OK. 选择Web API 模板 如果你想使用Azure App Se ...
- React 学习(二) ---- props验证与默认属性
在上一节中, 我们提到了props, 组件之间数据的传递使用props. 我们调用组件时可以设置props, 组件内部通过props获取. 为了props 使用更加友好, React 提供了简单的验证 ...
- qt 在窗口上画框
在窗口w上面画个黄色的框:在窗口上添加一个label,然后在label上画框 QLabel label(&w); label.setScaledContents(true); QPixmap ...
- 个人整理的数组splay板子,指针的写的太丑了就不放了。。
splay的板子.. 由于被LCT榨干了..所以昨天去学了数组版的splay,现在整理一下板子.. 以BZOJ3224和3223为例题..暂时只有这些,序列的话等有时间把维修序列给弄上来!! BZOJ ...
- Minimum number of steps CodeForces - 805D(签到题)
D. Minimum number of steps time limit per test 1 second memory limit per test 256 megabytes input st ...
- python3 字符串str
字符串使用单引号或双引号表示: 是不可变的,当一个字符串被创建后,它始终不会被改变: 可以被迭代,也可以被切片: +拼接字符串,*重复输出字符串: 格式符%s,%d,%f u'字符串:Unicode格 ...
- Android工程图片资源命名禁忌
Android工程中,res\drawable\ 文件夹下所有的图片资源文件命名,不允许: 1. 大写字母 从Eclipse的这个报错可以知道资源文件的命名规则. Invalid file name: ...
- [luogu3648][bzoj3675][APIO2014]序列分割【动态规划+斜率优化】
题目大意 让你把一个数列分成k+1个部分,使分成乘积分成各个段乘积和最大. 分析 首先肯定是无法开下n \(\times\) n的数组,那么来一个小技巧:因为我们知道k的状态肯定是从k-1的状态转移过 ...