博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CSS常见布局与居中
阅读量:5930 次
发布时间:2019-06-19

本文共 1897 字,大约阅读时间需要 6 分钟。

这里,就CSS左右布局,左中右布局,水平与垂直居中,进行讨论。

CSS常用于控制页面布局的定位机制:

普通流、相对定位、绝对定位和固定定位。还可以使用float属性来让元素浮动。

1.左右布局

最常用的就是通过浮动(左浮或右浮)来实现浮动。

float属性允许你将普通流中的元素在它的包含元素内尽可能的向左或向右排列。
你应该设置margin属性来制定浮动元素之间的间距。

不同元素的高度和宽度不同,为防止浮动元素的后一元素自动上浮,可以为父元素赋予clearfix类来清除浮动解决这一问题。

left
right

同时在CSS中关于伪类作出声明:

.clearfix::after {  content: "";  display: block;  clear: both;}

设置左浮动(或右浮动),将两个子元素左右并排实现布局:

.descendant1,.descendant1 {  float: left;  margin-left: 30px;}

还可以通过绝对定位,通过元素脱离文档流来实现。

left
right

.parent {  position: relative;}.descendant1 {  position: absolute;  left: 0;  top: 0;}.descendant2 {  position: absolute;  left: 60px;  top: 0;}

2.左中右布局

我们类比左右布局,在此基础上实现由两个元素变为三个元素的布局。

通过全部左浮(或右浮)实现:

left
center
right

.descendant1,.descendant2,.descendant3 {  float: left;  margin-left: 20px;}

同理,第一个元素左浮,第三个元素右浮;同时设置三个元素为内联元素:

.descendant1 {  float: left;  margin-left: 20px;  display: inline-block;}.descendant2 {  margin-left:20px;  display: inline-block;}.descendant3 {  float: right;  margin-right: 260px;  display: inline-block;}

通过绝对定位:

left
center
right

.parent {  position: relative;}.descendant1 {  position: absolute;  left: 0;  top: 0;}.descendant2 {  position: absolute;  left: 60px;  top: 0;}.descendant3 {  position: absolute;  left: 120px;  top: 0;}

3.水平居中

文字居中:

text-align: center;

如果想让一个元素水平居中,首先确定你已经给元素设定了一个宽度(否则将溢满整个屏幕)。

可以通过设置左右的外边距为auto值来居中(包括图片)。

  

You can go to everywhere.

If you like.


p.text {  max-width: 300px;  text-align: center;  margin: 0 auto;}

4.垂直居中

在单行文本或按钮、小图中的文字很使用的方法,即设置行高与元素高度一致即可。

button


p.text {  height: 60px;  line-height: 60px;}

也可以根据实际需要尺寸,为所在元素设置上下的padding来实现居中:

p.text {  padding: 15px 0;  line-height: 60px;}

Written by:EdenSheng
Email:singlesaulwork@gmail.com

转载地址:http://jiutx.baihongyu.com/

你可能感兴趣的文章
【转】游戏程序员养成计划
查看>>
让git for windows记住密码
查看>>
Asp.Net时间戳与时间互转
查看>>
如何终止java线程
查看>>
从tcp原理角度理解Broken pipe和Connection reset by peer的区别
查看>>
sloth——算法工程师标注数据的福音
查看>>
恢复计算机崩溃数据的五款最佳Linux发行版
查看>>
【MySQL】MySQL快速插入大量数据
查看>>
weblogic重置用户名密码。
查看>>
C语言扩展Python模块
查看>>
父类不能转换成子类
查看>>
李洪强iOS开发之带placeHolder的Textview
查看>>
编写高质量代码:改善Java程序的151个建议(第7章:泛型和反射___建议93~97)
查看>>
Android 高仿微信表情输入与键盘输入详解
查看>>
【faster-rcnn】训练自己的数据——修改图片格式、类别
查看>>
C#:额外知识点
查看>>
防止表单重复提交
查看>>
【iCore3应用开发平台】发布 iCore3 应用开发平台出厂代码rev0.0.6
查看>>
leetcode - First Missing Positive
查看>>
CentOS 7.0系统安装配置步骤详解
查看>>