css水平垂直居中的方法与 vertical-align 的用法
前言:这是笔者学习之后自己的理解与整理。如果有错误或者疑问的地方,请大家指正,我会持续更新!
已知宽度的元素居中

position定位 + margin负值
<style type="text/css">
* {
padding: 0;
margin: 0;
} .wrapper {
width: 500px;
height: 500px;
background: #f90;
left: 0;
right: 0;
top: 0;
bottom: 0;
position: absolute;
margin: auto;
/*绝对定位 + 4个方向全部0px + margin:auto 可以做到基于父容器水平垂居中*/
/*如果只需要垂直居中,那可以把left和right删掉,并且水平居中的方法也很多*/
} .content {
width: 100px;
height: 200px;
background: #0f8;
position: absolute;
/*position: absolute基于第一个不是position:static的父级元素定位*/
left: 50%;
top: 50%;
margin-left: -50px;
margin-top: -100px;
/*绝对定位 + 左50% + margin左:宽度一半的负值 可以做到水平居中 右也可以*/
/*绝对定位 + 上50% + margin上:高度一半的负值 可以做到垂直居中 底部也可以*/
}
</style> <div class="wrapper">
<span class="content"></span>
</div>
未知宽度的元素居中
<style type="text/css">
* {
padding: 0;
margin: 0;
} .wrapper {
width: 500px;
height: 500px;
background: #f90;
left: 0;
right: 0;
top: 0;
bottom: 0;
position: absolute;
margin: auto;
/*绝对定位 + 4个方向全部0px + margin:auto 可以做到基于父容器水平垂居中*/
/*如果只需要垂直居中,那可以把left和right删掉,并且水平居中的方法也很多*/
} .content {
width: 100px;
height: 200px;
background: #0f8;
position: absolute;
/*position: absolute基于第一个不是position:static的父级元素定位*/
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
/*transform变化、使...变形、转换;transform属性应用于元素的2D或3D转换。这个属性允许你将元素移动,旋转,缩放,倾斜*/
/*translate平移,是transform的属性值的一部分*/
/*transition过渡、转变;可多个样式的变换效果*/
}
</style>
<div class="wrapper">
<span class="content"></span>
</div>
`div`中`img`图片垂直居中
可以用`vertical-align:middle`,但是这个属性只有在`inline-block`类型(`inline`也有影响)的元素身上起作用。

方法一:图片`vertical-align:middle` + 父元素的`height`与`line-height`一致
<style type="text/css">
* {
padding: 0;
margin: 0;
} .wrapper {
height: 300px;
line-height: 300px;
width: 300px;
margin: 100px auto;
background: #f90;
text-align: center;
} .wrapper img {
width: 150px;
vertical-align: middle;
}
</style>
<div class="wrapper">
<img src="data:images/1.jpg" alt="美女" title="美女" />
</div>
<style type="text/css">
* {
padding: 0;
margin: 0;
} .wrapper {
width: 300px;
height: 300px;
background: #f90;
text-align: center;
vertical-align: middle;
display: table-cell;
} .wrapper img {
width: 150px;
}
</style>
<div class="wrapper">
<img src="data:images/1.jpg" alt="美女" title="美女" />
</div>
css水平垂直居中的方法与 vertical-align 的用法的更多相关文章
- css 水平垂直居中的方法总结
在项目中经常会遇到设置元素水平垂直居中的需求.而且具体的场景也不同,所以将个人总结的方法做个汇总,希望对浏览者有用. 以下所举的例子都以一个html为准,这里规定好一些公用样式. body { bac ...
- CSS水平垂直居中的方法
原文链接:http://caibaojian.com/370.html 水平垂直居中,特别是使用在列表的时候经常会用到的,以前有需求的时候我也做过类似的代码,是使用display:table-cell ...
- 介绍一种css水平垂直居中的方法(非常好用!)
这次介绍一下一个水平垂直居中的css方法,这个方法可以说是百试百灵,废话不多说,直接附上代码: html,body{ width:100%; height:100%; } 你需要居中的元素{ posi ...
- CSS水平垂直居中常见方法总结
1.元素水平居中 当然最好使的是: margin: 0 auto; 居中不好使的原因: 1.元素没有设置宽度,没有宽度怎么居中嘛! 2.设置了宽度依然不好使,你设置的是行内元素吧,行内元素和块元素的区 ...
- CSS水平垂直居中常见方法总结2
1.文本水平居中line-height,text-align:center(文字)元素水平居中 margin:0 auo 方案1:position 元素已知宽度 父元素设置为:position: re ...
- [css]水平垂直居中的方法
1.top:cale(50% - 2rem); left:cale(50% - 2rem);
- 53.CSS---CSS水平垂直居中常见方法总结
CSS水平垂直居中常见方法总结 1.元素水平居中 当然最好使的是: margin: 0 auto; 居中不好使的原因: 1.元素没有设置宽度,没有宽度怎么居中嘛! 2.设置了宽度依然不好使,你设置的是 ...
- CSS水平垂直居中总结
行内元素水平居中 把行内元素包裹在块级父元素中,且父元素中的css设置text-align:center; <!DOCTYPE html> <html> <head> ...
- CSS水平垂直居中的几种方法2
直接进入主题! 一.脱离文档流元素的居中 方法一:margin:auto法 CSS代码: div{ width: 400px; height: 400px; position: relative; b ...
随机推荐
- 【Flask】 WTForm表单编程
WTForm表单编程 在网页中,为了和用户进行信息交互总是不得不出现一些表单.flask设计了WTForm表单库来使flask可以更加简便地管理操作表单数据.WTForm中最重要的几个概念如下: Fo ...
- 【Python】 http客户端库requests & urllib2 以及ip地址处理IPy
requests requests是个HTTPClient库,相比于urllib,urllib2等模块比更加简洁易用 ■ get请求 作为示例,讲一下关于requests如何发起并处理一个get请求 ...
- Axure RP初学
制作商品购买页
- linux小白成长之路1————通过Parallels安装CentOS虚拟机
以下是通过Mac版Parallels安装CentOS虚拟机的教程: 1.在Parallels向导中选择"下载CentOS",点击"继续":  2.点击&quo ...
- http的CA证书安装(也就是https)
近几年随着安全意识的提高,https流行起来,很多小伙伴不太了解https是什么,其实http和https并没有区别,简单的来说,https就是将http通信进行了加密和解密的一个过程.加上谷歌浏览器 ...
- 小程序之Tab切换(二)
之前写的那个Tab切换是常规逻辑写的,接下来我会列出小程序api自带的写法,当然了 这个写法更加简单,实用.我们只需要配置app.json这个文件即可. 先看效果图: app.json代码:(有木有感 ...
- id 选择器
id 选择器 1.id 选择器可以为标有特定 id 的 HTML 元素指定特定的样式. (即也可以说,可以将已经预先定义的特定样式,通过id选择器,赋值指向HTML 元素) 2.HTML元素以id属性 ...
- Sublime 、NotePad++中查找匹配中文字符
在Sublime .NotePad++中可以使用正则表达式 [\x{4e00}-\x{9fa5}] 查找匹配中文字符.
- pyc反编译-uncompyle2的安装及使用
pyc反编译-uncompyle2的安装及使用 0x00 安装 1.下载并解压到安装目录 python setup.py install //安装 2.下载链接: 链接:https://pan.bai ...
- MySQL之集合函数与分组查询
这是分组查询用到的语句,也包括了排序以及常用的集合函数