Html+CSS二周目--->常用概念
学习css几乎俩周,来总结一下
对于初学者来说,有一些基本的概念是我们应当清楚的。掌握这些概念,可以帮助你更加有效的开发,大大提高开发效率。
1.盒子模型 2.浮动(float) 3.定位(position)
盒子模型
首先我们先聊一聊盒子模型,我们所能够看到的网页,本质上其实都是一个个盒子组成的,通过盒子和盒子的组合,来达到布局效果,所以学习盒子模型的重要性可想而知
我们可以看到盒子模型是由:内容部分(content),padding(内填充),boder(边框),margin(外边距)组成的,我们在网页的任何一个盒子都是这个样子的
padding,margin,boder我们都可以单独设置某一方向上面的值,或者整体设置值
padding的设置是将内容在盒子中来进行一定操控,而margin是盒子和盒子之间位置的掌控
知道了这一点就可以大大提高你在布局方面的效率
浮动
嗯,就是浮动,float属性,这也是一个很重要的概念性东西,在提到这点之前我们先聊一下网页的组成。
网页是盒子组成,但是只是结构上来说,真正本质上网页其实是由元素组成,分别有块级元素和行级元素
块级元素是独占一行的,就像div标签,我们在开发者模式中可以很直观的看到
而行级元素是可以并排在一行之中的,它的长和宽是依照内容来进行变化的,比如span标签,所以对其设置宽和高是没有用处的,不会影响整体的布局
float属性就是浮动,它可以设置为left,right,none
形式上表现为在父级容器的最左边,或者最右边
正常情况下,对于块级元素来说,他是处于标准文档流之中的,但是一但设置浮动之后,该元素就会脱离标准文档流,成为独立出来的一部分,而剩下的元素将会以省略它的方式进行排列。这样子可能会导致布局紊乱,这个时候大神又发明出来一种新方法来解决这个问题。
正常情况
浮动以后
float:left
clear:both;将布局改变的元素直接给清楚浮动,抵消了浮动带给的元素整体的移动,很实用的一点
定位
学会了以上俩种方式我们会发现,我们可以大致将页面布局出来,使用浮动左右排列,但是这种排列并不是很精确的一种方式,这个时候大神又发明了一种方法,定位
定位可以精确严格将元素位置摆放在所期望的位置当中,定位分为三种,相对定位,绝对定位和固定定位,因为固定定位一般很少会用到,所以我们在这里不讲。
相对定位(relative)相对于他在标准文档流之中的位置进行定位,可以设置它偏移属性来改变所处的位置,但是在文档流之中的位置仍然保留
初始图片是按照一列排列,对box2进行了相对定位,给box设置了top,left俩个偏移量。我们可以看到box2在以初始位置来进行定位,而且初始位置在文档流之中还是仍然保留下来。
绝对定位(absolute)绝对定位是依照 最近的已经定位的父元素 来进行定位的,若父元素没有定位,则会按照body来进行定位。且定位元素会脱离标准文档流。
初始图片仍然是按照一列排列, 对父类div进行了相对定位,但不设置偏移量。对box2进行绝对定位,分别给right和buttom偏移量,使得box2以被定位过的父类div为参照物进行定位。可以直观的看出来,绝对定位的元素会脱离标准文档流,会影响到box3的位置。
Html+CSS二周目--->常用概念的更多相关文章
- 201271050130-滕江南-《面向对象程序设计(java)》第十二周学习总结
201271050130-滕江南-<面向对象程序设计(java)>第十二周学习总结 项 目 内 容 这个作业属于哪个课程 https://www.cnblogs.co ...
- 201521123072《java程序设计》第十二周学习总结
201521123072<java程序设计>第十二周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student对象 ...
- 201521123038 《Java程序设计》 第十二周学习总结
201521123038 <Java程序设计> 第十二周学习总结 1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结多流与文件相关内容. 2. 书面作业 将Student ...
- 201771010134杨其菊《面向对象程序设计java》第十二周学习总结
第十二周学习总结 第一部分:理论知识 内容概要: AWT与Swing简介:框架的创建:图形程序设计: 显示图像: 1.AWT组件: 2.Swing 组件层次关系 3 .AWT与Swing的关系:大部分 ...
- 201871010123-吴丽丽《面向对象程序设计(Java)》第十二周学习总结
201871010123-吴丽丽<面向对象程序设计(Java)>第十二周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
- 201871010106-丁宣元 《面向对象程序设计(java)》第十二周学习总结
201871010106-丁宣元 <面向对象程序设计(java)>第十二周学习总结 正文开头: 项目 内容 这个作业属于哪个课程 https://home.cnblogs.com/u/nw ...
- 201871010111-刘佳华《面向对象程序设计(java)》第十二周学习总结
201871010111-刘佳华<面向对象程序设计(java)>第十二周学习总结 实验十 集合与GUI初步 实验时间 2019-11-14 第一部分:基础知识总结 第九章知识总结 1. ...
- 201871010101-陈来弟《面向对象程序设计(Java)》第十二周学习总结
201871010101-陈来弟<面向对象程序设计(Java)>第十二周学习总结 实验十 集合与GUI初步 实验时间 2019-11-14 第一部分 理论部分 1.(1) 用户界面 ...
- 201871010104-陈园园 《面向对象程序设计(java)》第十二周学习总结
201871010104-陈园园 <面向对象程序设计(java)>第十二周学习总结 项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ ...
随机推荐
- [SinGuLaRiTy] 图论题目复习
[SInGuLaRiTy-1027] Copyright (c) SinGuLaRiTy 2017. All Rights Reserved. [Vijos 1423] 最佳路线 题目描述 年久失修的 ...
- 转载JAVA八大经典书籍,你看过几本?
一.Java从入门到精通*<Java从入门到精通(第3版)>从初学者角度出发,通过通俗易懂的语言.丰富多彩的实例,详细介绍了使用Java语言进行程序开发需要掌握的知识.<Java从入 ...
- Jmeter处理cookie
修改bin/jmeter.properties中的 保存后重启jmeter 在测试计划中添加HTTP Cookie 管理器
- excel测试数据导入
需求背景:测试数据的导入一般在dataprovider中写入对应的测试数据,当参数较多,组合测试或者接口参数测试的测试数据都需要逐一写数据驱动类,数据准备消耗了大量时间.前一篇博客中介绍了对偶测试的小 ...
- PANet训练自己的数据(VIA标注)
当前最好的实例分割网络非PANet莫属,可是由于模型太新,网上的资料太少,最近的项目需要 实例分割,只能自己踩踩坑了,目前我还没看到一篇关于PANet训练的博客,只有几篇讲论文的. 环境:ubuntu ...
- python 字符串 操作
去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sS ...
- js 弹性菜单
<!doctype html> <html> <head> <meta http-equiv="Content-Type" content ...
- Linux 磁盘 分区 挂载点的理解
在Linux中一切皆文件: 虚拟文件系统(Virtual File System, 简称 VFS), 是 Linux 内核中的一个软件层,用于给用户空间的程序提供文件系统接口:同时,它也提供了内核中的 ...
- Codeforces - 466C 双指针
首先要判sum是否是3的整数倍 然后把符合条件的前缀和以及后缀和分别加入到静态vector中 最后扫一下j和k定位在哪然后求总长的差来更新答案 注意i j k至少隔1位,所以lower_bound是s ...
- C#工具类之日期扩展类
/// <summary> /// DateTimeHelper /// </summary> public static class DateTimeHelper { /// ...