CSS网页布局

CSS常用的布局方式主要有定位式和浮动式两种,相应布局属性为定位属性(position)和浮动属性(float)。

1.定位属性(position)


使用position属性可以精确控制盒子的位置,其语法格式如下。

position: static |relative | absolute | fixed

🍅静态定位

设置position属性的值为static,或不做设置即缺省时默认为static,元素按照HTML规则定位。

示例

代码

效果

在这里插入图片描述

🍅相对定位

设置position属性的值为relative时即为相对定位,设置盒子相对其原本位置的定位。相对定位的盒子占用原页面空间。

示例

代码

效果

在这里插入图片描述

🍅绝对定位

设置position属性的值为absolute时即为绝对定位,设置盒子相对其具有position设置的父对象进行定位。

🍑父对象有position属性设置

示例

代码

在这里插入图片描述

效果

在这里插入图片描述

🍑父对象无position属性设置

绝对定位元素的所有层次父对象均无position属性设置时,该元素以body即浏览窗口为参照绝对定位。如示例15-13中,删除A图片父对象position属性设置,即删除如下代码行:

position: relative;

left:0px;

top:0px;

🍅层叠定位属性(z-index)

被定位的元素会挡住部分其他元素,可以通过层叠定位属性(z-index)定义页面元素的层叠次序。z-index的取值可以为负数,表示各元素间层次关系,值大者在上,当为负数时表示该元素位于页面之下。

示例

代码

在这里插入图片描述

效果

在这里插入图片描述

2.浮动属性(float)


float属性可以控制盒子左右浮动,直到边界碰到父对象或另一个浮动对象。

float属性语法格式如下。

float:none|left|right;

🍅基本浮动定位

设置了向左或向右浮动的盒子,整个盒子会做相应的浮动。浮动盒子不再占用原本在文档中的位置,其后续元素会自动向前填充,遇到浮动对象边界则停止。

示例

代码

效果

在这里插入图片描述

🍅清除浮动属性

浮动设置使用户能够更加自由方便地布局网页,但有时某些盒子可能需要清除浮动设置,这时需要用到浮动属性clear,其语法格式如下:

clear:none|left|right|both;

示例

代码

效果

在这里插入图片描述

二、CSS的网页布局

=========================================================================

网页布局结构按照列数可分为单列、两列和三列等几种布局。

1.单列布局


单列布局相对简单,很多复杂布局往往以单列布局为基础。单列布局中的对象位置可固定在左侧、浮在右侧或居中;宽度可用像素值固定、百分比或相对于字号设置。

举个例子

代码

用HTML5结构元素布局

搜索引擎改变记忆方式 人们忘记网上找到的信息

Article:

美国科学家在7月15日出版的《科学》杂志上报告称,相关研究表明,谷歌等搜索引擎的出现改变了我们学习和记忆信息的方式。在一个遍及搜索引擎的新世界中,更好地理解记忆的工作原理有望改变各个领域的教学和学习方式。

哥伦比亚大学的心理学家贝齐•斯帕罗和同事进行了一系列实验后得出结论说,人们会忘记自己能在网上找到的信息,而记住自己认为无法在网上找到的信息。研究也发现,人们更容易记住在互联网的何处能找到这些信息,而不是……

Footer:

 更深层次的分析表明,当人们能够记住信息时,他们不会记住在何处能找到某些信息;而当人们无法记住信息本身时,才会倾向于记住在何处能找到这些信息。

效果

在这里插入图片描述

2.两列布局


1.传统的两列布局

两列布局使用两个盒子,第一个盒子位置应在页面左侧,第二个盒子(应在页面右侧,可用fixed属性或float属性设定。

在这里插入图片描述

思考:如果左右两个盒子没有设置统一的高度“height: 400px”,页面效果会有什么变化呢?

2.用CSS3改进的盒布局

如果使用盒布局,需要设置左右两个盒子的外层容器的box属性,不需要使用float属性。

在这里插入图片描述

3.嵌套的2列布局

顶部固定,一列固定、一列变宽的布局是在博客类网站中很受欢迎的布局形式,这类网站常把侧边的导航栏宽度固定,而主体的内容栏宽度是可变的。

与盒布局相关的部分属性

在这里插入图片描述

下面例子是一个典型的嵌套2列布局,用到了盒布局中的弹性布局属性-webkit-box-flex。

代码

在这里插入图片描述

在这里插入图片描述

效果

在这里插入图片描述

3.使用CSS3盒布局的三列布局


三列布局可以使用float属性实现,对3个盒子(列)对象分别设定位置和宽度,再设置浮动属性即可。

#left{ height: 400px;

width: 120px;

float: left;

}

#right{ background:#FFC;

height: 400px;

width: 100px;

float: right;

}

#main{

background: #D0FFFF;

height: 400px;

margin-left:120px;

}

1.简单的三列布局

下面例子是一个使用盒布局实现的三列布局。左右两列宽度固定,中间列自适应。

代码

在这里插入图片描述

在这里插入图片描述

效果

在这里插入图片描述

嵌套的三列布局

前面布局采用的策略是将盒子(div块)从上到下、从左到右依次排列。

在这里插入图片描述

代码实现

在这里插入图片描述

在这里插入图片描述

三、DIV+CSS布局的应用

=============================================================================

在设计网页之前,首先对网页布局有一个总体思路,然后就可以用盒子对网页进行大致分块设定。

1.图文混排的实现


1.用DIV+CSS布局方式实现图文混排效果

在这里插入图片描述

举个例子

效果

在这里插入图片描述

代码实现

在这里插入图片描述

在这里插入图片描述

对上面例子进行改进

效果

在这里插入图片描述

代码实现

美国著名的《连线》杂志,曾就一系列事物的发展前景向一批各自领域的专家征询。这些专家的看法可能有些武断,但令人欣赏地直奔主题。下面是他们对互联网络所预言的另一张时间进程表:

尼葛洛庞帝

阿伦•凯
代表人物
2001 远程手术将十分普及,最好的医学专家可以为全世界的人诊断治疗疾病。
2001《财富500家》上榜者中将出现一批"虚拟企业"。
2003

全球可视电话将支持更普遍的"远程会议",企业家将通过网络管理公司。
2003 "远程工作"将是更多的人主要的"上班"方式。
2007 光纤电缆广泛通向社区和家庭,"无限带宽"不再停留在梦想中。
2016

出现第一个虚拟大型公共图书馆,虚拟书架上推满了虚拟书籍和资料。

这些预言中,还包括了所谓"食品药片"、"冷冻复活"等匪益所思的言论。仅从与网络相关的预言看,人类全方位的"数字化生存"──包括工作、生活和学习等相当广泛的领域── 都不是那么遥远。
这一张时间进度表究竟能不能如期兑现?阿伦•凯(A.Kay)首先提出,又被尼葛洛庞帝引用过的著名论断说得好:"预测未来的最好办法就是把它创造出来。"

当今的社会,预测再也不是消极地等待某个事实的出现,而是积极地促成这个事实。从这个意义上讲,创造和创新才是我们对21世纪电脑发展趋势最准确的预测,远胜过一切天才的预言。

摘自《大师的预言》

2.制作二级导航菜单


导航菜单通常分为横向导航菜单和纵向导航菜单。DIV+CSS布局中多通过控制列表样式制作导航菜单,主要用到<ul><li><a>等3组标记。

1.建立一级菜单

效果和代码实现

在这里插入图片描述

2.定义CSS样式

创建样式#menu,设置菜单整体大小等属性,并添加到<div>标记中;创建样式#menu ul,设置隐藏列表符号、清除边距等属性,代码如下。

效果和代码实现

在这里插入图片描述

3.创建二级菜单

二级导航菜单是指当鼠标经过一级菜单项时,会弹出相应的二级菜单,鼠标离开该项后二级菜单自动消失。接下来在上例的基础上制作二级菜单,以一级菜单项“CSS”为例,在其下添加二级菜单。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值