css实现元素水平、垂直居中

一、水平居中

  1、行内元素的水平居中方法

    给父元素设置一个text-align:centent。    


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
text-align: center;
}
</style>
<body>
<div class="box"></div>
</body>
</html>

  2、 确定宽度的块级元素水平居中  

    设置外边距,margin:0 auto;  


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
width: 400px;
height: 400px;
background: red;
margin: 0 auto;
}
</style>
<body>
<div class="box"> </div>
</body>
</html>

    

  3、负外边距

    创建一个包含居中元素的容器,然后将其绝对定位于相对页面左边边缘50%的位置。这样,该容器的左外边距将从页面50%宽度的位置开始算起。然后,将容器的左外边距值设置为负的容器宽度的一半。这    样即可将该容器固定在页面水平方向的中点。

  


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
width:400px;
height:400px;
background:red;
position:absolute;
left:50%;
margin-left:-200px;
}
</style>
<body>
<div class="box">
</div>
</body>
</html>

二、垂直居中

  1、使用line-height    


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
background: red;
line-height: 50px;
}
</style>
<body>
<div class="box">Text here</div>
</body>
</html>

  2、margin


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
background: red;
width: 400px;
height:400px;
}
.logo{
width: 200px;
height: 200px;
margin-top: 100px;
}
</style>
<body>
<div class="box">
<img class="logo" src="images/logo.jpg" alt=""/>
</div>
</body>
</html>

  3、vertical-align


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
display:table;
}
.div {
display:table-cell;
vertical-align:middle;
background: red ;height: 100px
}
</style>
<body>
<div class="box">
<div class="div">
<p> vertical-align </p>
</div>
</div>
</body>
</html>

  4、position:absolute;


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
width: 400px;
height: 400px;
background: red;
position: relative;
}
.div{
position:absolute;
top:50%;
width: 200px;
height:200px;
margin-top:-100px;
background: green;
}
</style>
<body>
<div class="box">
<div class="div"></div>
</div>
</body>
</html>

  5.position:absolute


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
position:absolute;
top:0;
bottom:0;
left:0;
right:0;
margin:auto;
height:240px;
width:70%;
background: red;
}
</style>
<body>
<div class="box"></div>
</body>
</html>

  6、在 content 元素外插入一个 div


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
height:50%;
float:left;
background: red;
margin-bottom:-100px;
}
.div {
clear:both;
width: 200px;
height:200px;
background: green;
position:relative;
}
</style>
<body>
<div class="box"></div>
<div class="div"></div>
</body>
</html>

  7、padding


<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<style>
.box{
padding: 20px;
background: red;
}
</style>
<body>
<div class="box"> padding </div>
</body>
</html>

时间: 2024-10-11 21:09:17

css实现元素水平、垂直居中的相关文章

css 实现元素水平垂直居中总结5中方法

个人总结,如有错误请指出,有好的建议请留言.o(^▽^)o 一.margin:0 auto:text-align:center:line-height方法 1 <div id="divAuto">margin,text-align;水平居中</div> 1 /* 2 margin:0 auto; 设置块元素(或与之类似的元素)的水平居中 3 text-align:center;设置文本或img标签等一些内联对象(或与之类似的元素)的水平居中 4 line-hei

css中元素水平垂直居中4种方法介绍

table-cell轻松设置文本图片水平垂直居中 让一个元素垂直居中的思路:把这个元素的容器设置为table-cell,也就是具有表格单元格的特性,再使用vertical-align(这个属性对block元素不起作用,但对table-cell元素是有效的)设置元素垂直居中,即可达到我们想要的效果. IE7及以下版本不支持此方法,IE8及以上版本及大部分的主流浏览器都很好的支持. HTML代码  代码如下   <div class="img">    <img src=

CSS实现元素水平垂直居中—喜欢对称美,究竟是谁的错

在CSS中对元素进行水平居中是非常简单的:如果它是一个行内元素,就对它的父元素应用text-align:center;如果它是一个块级元素,就对它自身应用margin:auto.然而要对一个元素进行垂直居中,就有点束手无策了,本文介绍了几种常用的垂直居中方法以供参考! 一.表格布局法二.基于行内块的解决方案(来自于第二篇参考文献)三.基于绝对定位的解决方案1.绝对定位+负的外边距2.绝对定位+margin:auto3.绝对定位+transform反向偏移四.基于视口单位的解决方案(仅适用于基于视

关于元素水平垂直居中的那些事?

关于元素水平垂直居中的那些事? 中国式的美,总是少不了对称美的存在.对称美,存在于建筑之上,也巧秀于美食之中.对称之美,中国之风!美,用户体验的一种,作为用户体验的打造者,我们是不是也应该知道些有关于前端开发中的对称美呢?那我们大前端中到底存在些什么对称美呢?ok,那我们今天就来聊聊,关于元素水平垂直居中的那些事吧! 什么是元素水平垂直居中? 什么是元素水平垂直居中?想必大家看到这问题,心里早已经有数了!水平则为左右,垂直即为上下,居中亦为中心.也就是说,我们在使用元素的时候,有可能要水平居中,

《转》CSS元素水平垂直居中方法总结(主要对大漠以及张鑫旭博客所述方法进行了归纳)

转自大地Dudy的CSS元素水平垂直居中方法总结(主要对大漠以及张鑫旭博客所述方法进行了归纳) 本文主要是对主流居中方法进行了归纳,有些地方甚至就是把别人的代码直接复制过来的,没有什么自己的东西,除了大漠以及张鑫旭的方法外,还有来自司徒正美.怿飞博客的几个方法 以下方法,由于测试环境的原因,IE系列只测试了IE9和IE6,以下所说的IE的支持性只是相对于IE9和IE6来说的: 一.元素的水平垂直居中: 第一种方法: <!doctype html> <html lang="en&

CSS元素水平垂直居中方法总结(方法主要来自大漠以及张鑫旭博客)

以下方法,由于测试环境的原因,IE系列只测试了IE9和IE6,以下所说IE的支持性只是相对于IE9和IE6来说的: 一.元素的水平垂直居中: 第一种方法:<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"&g

CSS未知宽高元素水平垂直居中

方法一 思路:显示设置父元素为:table,子元素为:cell-table,这样就可以使用vertical-align: center,实现水平居中优点:父元素(parent)可以动态的改变高度(table元素的特性)缺点:IE8以下不支持 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>未知宽高元素水平垂直居中&l

css 实现DIV水平垂直居中于屏幕

原文地址: http://www.manongjc.com/article/374.html css如何将div实现全屏水平垂直居中,本章节介绍一下如何将一个div元素在整个网页内实现水平垂直居中效果,代码是最有说服力的,直接看代码. 代码如下: <!DOCTYPE html> <html> <head> <title>css 实现DIV水平垂直居中于屏幕</title> <style type="text/css"&g

转载:解读CSS布局之-水平垂直居中(1)

本文转自http://f2e.souche.com/blog/jie-du-cssbu-ju-zhi-shui-ping-chui-zhi-ju-zhong/,以及大地dudy的博客http://www.cnblogs.com/Dudy/p/4085292.html. 对一个元素水平垂直居中,在我们的工作中是会经常遇到的,也是CSS布局中很重要的一部分,本文就来讲讲CSS水平垂直居中的一些方法.由于我们大搜车的日常工作中已经不再需要理会低版本IE,所以本文所贴出的方法,是没有去考虑IE的,如果有

Flexbox制作CSS布局实现水平垂直居中

Flexbox实现一个div元素在body页面中水平垂直居中: <!DOCTYPE html><html lang="en"><head>  <meta charset="utf-8"/>  <title>Flexbox制作CSS布局实现水平垂直居中</title>  <style type="text/css">    html {      height: 1