CSS和div布局页面
CSS和div布局页面
- CSS和div布局页面
- 一、什么是布局
- 网页布局
- 页面元素定位机制
- 二、布局属性
- 浮动
- 清除浮动
- 定位
- 绝对定位
- 相对定位
- 固定定位
一、什么是布局
网页实质是块与块之间的位置,块挨着块,块嵌套块,块叠着块。css网页布局指的是利用css对网页内容的布局进行规划,将主次内容进行归纳和区分;以最适合浏览的方式,将图片、文字等内容遵循一定的原则,放置到页面不同的位量给用户良好的浏览阅读体验。DIV+CSS布局就是网页html通过DIV标签+CSS样式表代码开发制作的(html)网页的统称。
网页布局
进行网页布局的目的是为了使页面结构清晰,易读,更有条理性。网页布局有很多种方式,一般分为以下几个部分:头部区域、菜单导航区域、内容区域、底部区域。
这里大概总结网络布局的一般步骤:
1、确定版心:网页的主体内容,在页面中水平居中显示
2、分析页面中的模块:头部(header)、导航(nav)、焦点图(banner)、内容(content)、页面底部(footer)。
3、控制页面中各个模块:通过盒子模型,使用DIV+CSS进行模块的控制。
页面元素定位机制
1、普通流方式:由元素在html文件中的位置决定(由标签在文件中的位置来决定)。
这种方式是按标准文档流进行布局的,也是默认的布局方式,这种布局方案,是最简单的一种布局方案。
所以 它也存在比较明显的缺点:就是功能太弱。如果只使用流式布局,并不能完成复杂页面的开发。因为复杂页面中有很多的盒子,需要并排显示。
2、浮动方式:元素在页面中可以左右移动,直到碰到包含框或其他浮动框。浮动发明的原因,刚开始是让文字环绕浮动的元素,形成字围效果,可以这么说,浮动就是元素脱离原有的标准文档流,移动到其父元素中指定的位置。
3、绝对定位:直接将元素定位到页面的任何位置(设置元素在页面中的位置坐标)。
这种方式的运用场景很多,比如说让块级元素水平垂直居中。
在写一些效果时,绝对定位使用的还是比较多,如:轮播图…
在写动画时,会也使用到绝对定位。
二、布局属性
浮动
1、浮动:元素脱离原有的标准文档流,移动到其父元素中指定的位置
2、浮动的实现:在元素的CSS中添加float属性
(注意,浮动元素不占据空间,以两个div为例, 正常是俩都显示出来,占据2空间,加浮动后,div就会叠加显示在一个位置, 此时要想让两个div正常显示一般使用到margin-left:浮动div的宽度,或者也是使用浮动。如果不设置,div叠加在一个位置时,只是位置叠加,但div中的内容不会被覆盖,如果后面的div没有指定宽度则自动横向填充完整,文字过多则会跑到第一个div下面形成文字环绕效果。如果指定宽度则去掉被覆盖的宽度显示,其它的文字到浮动div下面显示,即产生文字环绕效果。)
使用浮动的目的是为了让块级元素可以并排显示。然而浮动的元素会以它后面的兄弟元素以及父元素造成影响,因此我们需要清除浮动。
清除浮动
1、原因:浮动的元素离开了原有的文档流,它会对页面中其他元素的排版产生影响。为了消除这种影响,可以使用clear属性消除浮动。
clear属性:
2、对父元素造成影响
当父元素中的所有元素都浮动了,并且父元素没有设置高度,父元素的高度就会变成0,也叫父元素高度塌陷。如果造成了影响,我们需要清除这种影响,清除这种影响,我们叫也清除浮动。
解决办法有:
(1)加高法。手动给父元素加上高度 用的不多。在写页面时,如果说盒子的高度就是靠内容撑起来的,此时,使用加高法,就不适合。
(2)overflow:hidden
:它的本意并不是用来清除浮动,但是它有这么一个作用,可以清除浮动元素对父元素造成的影响。
(3)伪元素法:创建一个伪元素 ::after表示在father内部的最后面创建一个元素这个元素就是一个伪元素。
3、对兄弟元素造成影响
解决办法:
用clear的相关属性消除对应的浮动。
定位
浮动布局虽然灵活,但是却无法对元素的位置进行精确的控制。在CSS中,通过定位属性可以实现网页中元素的精确定位。
绝对定位
1、决定定位:可以把元素精确定位到页面中的某个地方。
position: absolute;
top:30px;
left: 45px;
2、运用场景:
①让块级元素水平垂直居中。
②在写一些效果时,绝对定位使用的还是比较多,如:轮播图。
③在写动画时,会也使用到绝对定位。
3、注意:
①元素绝对定位后,它与普通文档流就没有关系,不占据普通文档流的空间。
②绝对定位也需要设置偏移量,有两个方向: left right
另一个方向是top bottom
,设置偏移量,一般是两个方向选其一。
③定位完,还可以通过margin调整它的位置。
④绝对定位的元素的位置是相对于最近的父元素而言的,因此可以简记:子绝父相。
相对定位
1、相对定位:元素以它所在的普通流中的位置为起始点进行定位(设置坐标)。
position: relative; /*相对定位*/top:150px;left: 150px;
2、运用场景:在原本的位置基本上,进行偏移时,可以使用相对定位。
①对一个盒子的位置进行微调。
②position:relative 这一行代码还有一个作用,设置绝对定位的参数点。
3、注意:
①相对定位的元素脱离标准文档流,但是它原本的位置还是被自己占用着,别人无法占用。
②当进行了相对定位,基本上都要通过top, left, bottom, right来设置偏移量。
③如果设置了margin也会影响位置。
固定定位
1、固定定位是参考与整个浏览器的窗口。也需要设置偏移量:top right bottom left
。
position: fixed; /*固定定位*/
2、注意:
①完全脱离标准文档流。
②固定定位的参考点是浏览器的窗口,不会随着内容的滚动而滚动。
③对于固定定位,有些低版本浏览器支持并不好,使用的时候,需要考虑兼容性问题。
CSS和div布局页面相关推荐
- 应用css div进行页面布局设计,利用CSS与DIV进行页面布局.ppt
<利用CSS与DIV进行页面布局.ppt>由会员分享,可在线阅读,更多相关<利用CSS与DIV进行页面布局.ppt(6页珍藏版)>请在人人文库网上搜索. 1.利用CSS与DIV ...
- 关于css加div布局和表格布局,菜鸟学习笔记:表格布局和div+css布局
网页布局可以通过表格和div元素来实现(注:table布局已经淘汰),首先我们来看看table布局 表格布局 导航 推荐文章 一个猴子成长史 你看个毛线 我就瞅你咋地 村里出了个半边天 一个猴子的成长 ...
- css中div布局学习(1)
看完慕课网中的div布局,简单记录一下里面的内容: 1.实现效果: 上面实现效果主要是考虑如何实现块元素居中的问题,关键代码: margin: 0 auto; 实现代码: <!DOCTYPE h ...
- 信息导航与网站设计 采用HTML+CSS+DIV布局页面
期末作业:根据本课程所学内容 布局如下页面 要求:导航条的内容要链接到自己的作品页面(从7次作业中选6个),页面中间的DIV要按照图示要求并根据自己的情况填写上相应的内容,可以使用列表也可以使用段落, ...
- 一个初级前端结合css、div谈一谈屏幕尺寸、分辨率、缩放概念题
写在前面: 本文作为本人学习总结之用,同时分享给大家~ 个人前端博客网站:https://zhangqiang.hk.cn 欢迎加入博主的前端学习qq交流群::706947563,专注前端开发,共同学 ...
- html图片位于div最底部,div置于页面底部
一直对于页面置底有一些困惑,下面这个例子不知道能不能解决 foot置底 /*html 和 body 的高度必须*/ html,body { height:100%;} .wrap { position ...
- 如何用div+css布局页面
如今web2.0炒的很厉害,先不去管它web2.0究竟是什么东西,反正div+css好像是火的不行了.各大知名站点都赶时髦似的把原来的表格布局翻新成了div+css,并美其名曰"本站符合we ...
- html div将页面划分,css+div网页布局
div+css排版是最新的网页排版理念,完全有别旧的排版方式(比如说table排版).首先在页面整体上进行div标签划分内容区域,然后再用css进行定位,最后再对相应的区域添加内容.div+css这种 ...
- 利用Div CSS(嵌套 盒模型)布局页面完整实例流程
Div CSS(嵌套 盒模型)布局页面完整实例流程: <!DOCTYPE html> <html> <head> <meta charset=" ...
最新文章
- c++区块链实例_确定技术任务了解区块链限制 开发区块链你该做哪些准备工作?...
- 延长线段ab到c的画法有几种_终于有人把趋势线的正确画法和错误画法讲透彻了,字字精华,原来大多数人都画错了...
- SpringMVC 类扫描原理解析
- elk集群配置配置文件中节点数配多少
- Java黑皮书课后题第11章:11.1(Triangle类)设计一个名为Triangle的类来继承GeometricObject类。该类包括:
- java web 服务器环境搭建之jdk安装
- 【树莓派学习笔记】五、处理、自动重命名并另存为图片
- java matching_LeetCode第[44]题(Java):Wildcard Matching
- iterator adapter inserter
- inDesign教程,如何创建杂志风标注?
- 最新网卡驱动下载win7
- A Simple but Tough-to-Beat Baseline for Sentence Embeddings阅读笔记
- JSONObject.fromObject爆红,显示无fromObject方法
- 大数据监控大屏系统,有这些demo就足够了!
- 用tar给linux .rar解压,Linux 下解压 rar 文件的方法
- iPhone4S、iPod5代、iPad2、iPad3、mini1代完美绕激活工具Sliver发布全新6.0版,支持工厂激活FMI OFF
- ECshop 数据库表结构字段说明
- 互联网日报 | 蔚来汽车股价年内涨幅近十倍;小米成立可穿戴部;恒大物业拟12月2日港交所上市...
- 【STM32训练—WiFi模块】第一篇、STM32驱动ESP8266WiFi模块获取网络时间
- MT管理器和高级终端Termux