css-元素水平、竖直居中

一、水平居中

1.文本图片水平居中

给父级元素设置text-align:center;

2.确定宽度的块级元素居中

设置自身margin-left:auto;margin-right:auto;别忘了设置自身宽度;

3.不确定宽度的块级元素的居中

(1)用table帮助实现不确定宽度块级元素居中

<table><tr><td>块级元素</td></tr></table>

设置table元素margin-left:auto;margin-right:auto;

(2)设置父级元素text-align:center;然后自身display:inline;

(3)父元素设置float:left;position:relative;left:50%;自身设置position:relative;left:-50%;

二、竖直居中

1.父级元素高度确定的单行文本

给父级元素设置行高等于父级元素高度;

2.给父级元素设置相同的padding;

3.父元素高度确定的多行文本、图片、块级元素的竖直居中

(1)vertical-align属性只有在父元素为td、th时才生效,其它元素默认不支持vertical-align;在firefox和IE8下可以设置display:table-cell,来激活vertical-align属性,当时IE6、7不支持display:table-cell,所以我们用最原始的笨办法,直接使用表格

<table><tr><td>元素</td></tr></table>   td默认设置了vertical-align:middle;

(2)firefox和IE8用vertical-align:middle;display:table-cell;在IE6、7中用hack;

.wrap{width:500px;height:200px;display:table-cell;vertical-align:middle;*position:relative;}
        .verticalWrap{*position:absolute;*top:50%;}
        .vertical{*position:relative;*top:-50%;}

原文地址:http://blog.csdn.net/fanhaiwang520/article/details/8682258

时间: 2024-10-12 19:29:07

css-元素水平、竖直居中的相关文章

Flex实现水平竖直居中布局

传统的布局使用的是“盒模型”加上display.position和float属性,但是对于一些特殊的布局实现例如居中却是比较麻烦,所以,为了解决一些复杂的布局问题,一种更为灵活的布局方式出现了,那就是Flex布局. Flex 即为Flexible Box,指的是“弹性布局”,它可以为盒模型提供更加灵活的布局方式,例如,用flex可以优雅地实现水平竖直居中的布局. 例如下面这个例子,我们想做的是让child元素在parent里面水平竖直居中: <!DOCTYPE html> <html l

css水平居中,竖直居中技巧(二)

css水平居中,竖直居中技巧(二)===### 1.效果 ### 2.代码#### 2.1.index.html <!DOCTYPE html> <html lang="zh-cn"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <meta http-equiv="X-UA-C

css 元素水平垂直方向居中

一.text-align:center;vertical-align:middde: html部分 <div class="parent"> <div class="child"> </div> </div> css部分 .parent{ width: 400px; height:400px; background:#666666; text-align: center; font-size: 0px; } .chil

html 水平竖直居中

line-height:容器高度 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <style> * { margin: 0; padding: 0; } /* white-space: 换行方式 normal 正常换行 nowrap 不换行 */ /* text-

竖直居中方式总结

已知有 html, body { margin: 0; height: 100%; } #child { width: 200px; height: 200px; background: black; } <div id="child"></div> 将元素 #child 竖直居中于窗口中部 绝对定位法 1 对未知高度的元素适用.jsfiddle #child { position: absolute; /* fixed */ top: 50%; transfo

常用布局,div竖直居中

常用两列布局,多列布局和div竖直居中 body { margin: 0; padding: 0; } .w200 { width: 200px; } .mar-left200 { margin-left: 200px; } .red { background-color: red; } .middle { vertical-align: middle; } .block { width: 80%; height: 300px; border: 1px solid #eee; margin: 0

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

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

HTML中行内元素的竖直方向的padding和margin是否真的无效

参考资料:Inline elements and padding 今天写一个导航栏时遇到了一个问题:行内元素的padding-top,padding-bottom和margin-top,margin-bottom是不是真的是无效的? 接下来就这个问题将具体分析: 1.行内元素拥有盒子模型么 答案是是的.没错,行内元素跟块级元素一样,同样拥有盒子模型. 2.行内元素的padding-top,padding-bottom和margin-top,margin-bottom是否无效 答案同样是是的.盒子

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