用 CSS 和 JS 实现元素的水平垂直居中
2017-02-10 15:17
651 查看
一、CSS 实现(2种方法)
方法1:已知要居中元素的宽高
.d1{
width:200px;
height:200px;
background-color:red;
position:absolute;
top:50%;
left:50%;
margin-top: -100px;
margin-left: -100px;
} 方法2:<
4000
/strong>未知要居中元素的宽高(移动端建议这么做)
.d1{
width:200px;
height:200px;
background-color:red;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
-webkit-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
}[b]二、JS 实现
function middle(){
//获取屏幕的高度
var heightBig=window.innerHeight;
//获取元素的高度
var d1=document.querySelector(".d1");
var heightSmall=parseFloat(window.getComputedStyle(d1).height);
d1.style.margin=(heightBig-heightSmall)/2+"px auto";
}
middle();
window.onresize=middle;
方法1:已知要居中元素的宽高
.d1{
width:200px;
height:200px;
background-color:red;
position:absolute;
top:50%;
left:50%;
margin-top: -100px;
margin-left: -100px;
} 方法2:<
4000
/strong>未知要居中元素的宽高(移动端建议这么做)
.d1{
width:200px;
height:200px;
background-color:red;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%,-50%);
-webkit-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
}[b]二、JS 实现
function middle(){
//获取屏幕的高度
var heightBig=window.innerHeight;
//获取元素的高度
var d1=document.querySelector(".d1");
var heightSmall=parseFloat(window.getComputedStyle(d1).height);
d1.style.margin=(heightBig-heightSmall)/2+"px auto";
}
middle();
window.onresize=middle;
相关文章推荐
- 纯js代码实现未知宽高的元素在指定元素中垂直水平居中显示
- css实现元素水平垂直居中
- 纯css实现元素水平垂直居中
- css实现元素水平垂直居中
- 纯js代码实现未知宽高的元素在指定元素中垂直水平居中显示
- CSS实现文字或图片等元素垂直、水平、绝对定位居中技术
- css实现高度不固定的div元素模块在页面中水平垂直居中
- 【Web】CSS实现绝对定位元素水平垂直居中
- CSS实现父级元素属性display为block的元素垂直和水平居中的三种方法
- CSS 实现:元素相对于文档水平垂直居中
- 根据HTML+CSS完成一个三列布局,左右侧栏宽为180px,高为300px;中间栏自适应,高为300px;中间栏子元素(宽高不确定)实现水平、垂直居中。
- 纯css实现全兼容的元素水平垂直居中
- CSS实现元素水平/垂直居中的方法
- css实现块级元素水平和垂直居中
- 利用css实现元素水平垂直居中的方法(分情况讨论)
- CSS实现垂直居中的常用方法 在前端开发过程中,盒子居中是常常用到的。其中 ,居中又可以分为水平居中和垂直居中。水平居中是比较容易的,直接设置元素的margin: 0 auto就可以实现。但是垂直
- CSS实现元素水平垂直居中—喜欢对称美,这病没得治
- css系列(布局):实现一个元素在浏览器中水平、垂直居中的几个方案
- css 实现元素水平垂直居中总结5中方法
- CSS实现元素水平、垂直居中的方法