div中实现居中
今天纠结了大半天的居中,把学到的先记录下来,还没完全弄清楚,发现网上原创的技术贴并不算多,大多都是相互转载。(ps.先安利一个大神的帖集,昨天才发现的,内容丰富,语言,呃...很幽默,一般都是图文并茂,看了你就懂了=。=(http://www.zhangxinxu.com/))
首先要实现的是文字居中,原本以为用text-align: center;vertical-align: middle;就可以实现,然而并不能。根据《css权威指南》因为vertical-align应用于行内元素和表单元格,无继承性,用百分数来表示值的时候是相对于元素的line-height值,应用到表单元格时,只能识别baseline、top、middle和bottom等值。所以vertical-align没法影响div这样的块级元素中的内容垂直方向的对齐。还是先贴我凌乱的代码~

方法1:也是最简单的方法,设置line-height和标签盒子的高度一致。
之原本以为line-height就是在p里设置行高用一下,原来还有这样的用处。补充一下关于line-height的继承性,其百分数相较于字体的大小,而且是父元素的字体大小。

结果就是在段落中会显示10px的行高和18px的字体,肯定不和谐啦,一般情况下行高要是字体的1.2倍。方法就是利用缩放因子,即将line-height:1.2,当制定一个数时缩放因子将是继承值而不是计算值,简单地说子元素会根据自己的字体大小来计算行高。(18px ×1.2)
方法二:设置padding,这个要算,不方便。
方法三:模拟表格。
其实是增加了一个div标签,外层div设置display:table;内层div设置display:table-cell,然后就可以利用vertical-align:middle。(有人说display:table-cell是布局神器,虽然ie6和ie7不支持,也才第一次接触,先埋个草)
至于图片居中对齐也可利用display:table-cell和文字大小来实现。或者将img放置在a标签中,给<a>设置display:inline-block同时结合font-size来实现。原理还不清,主要是不知道font-size到底应该设置为多大,才能使图片居中呢?利用table-cell时,整个外边框向左边移动了,似乎是影响了margin:5px;的设置。利用图里面代码的数值勉强可以实现居中,就自己试出来的。这问题先留着。(献上小新的小白~)

div中实现居中的更多相关文章
- CSS DIV中表格居中显示
将div的text-align设为center,然后将table的margin设为auto,即: <div> <table style="margin:auto; widt ...
- 多行文字在一个div中上下左右居中
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- div中图片居中
直接上图
- css 如何使图片与文字在div中居中展示?
1.情景展示 如何将图片与文字在div中一起居中展示? HTML片段 <div style="background: #fff;padding-top: 5px;border:1p ...
- css div中内容绝对居中(多行内容)
div中的内容绝对居中(不适合IE6哦,IE6我已经不考虑了),直接看代码吧. <!DOCTYPE HTML> <html> <head> <title> ...
- div中的内容居中
要使div中的内容居中显示,不仅div要设定“text-align:centr" ,内置对象要添加margin:auto;属性才能使其在firefox等其他浏览器中也能居中.
- 设置div中的div居中显示
设置div中的div居中显示 方法一. <div class='big'> <div class='small'>box1</div> </div> s ...
- div中宽高度自适应文字换行居中问题解决
<html> <head> <meta charset="UTF-8"/> <title>div中宽高度自适应文字换行居中demo& ...
- 让div中的table居中
div 标签上写 style="text-align:center" div中的table中写 style="margin:auto;" <table ...
随机推荐
- jquery.cookie()方法
jquery.cookie.js是一个轻量级的cookie 插件,可以读取.写入.删除 cookie. 首先包含jQuery的库文件,在后面包含 jquery.cookie.js 的库文件. < ...
- Python第三方库(模块)"scikit learn"以及其他库的安装
scikit-learn是一个用于机器学习的 Python 模块. 其主页:http://scikit-learn.org/stable/. GitHub地址: https://github.com/ ...
- hdu 1241 Oil Deposits(DFS求连通块)
HDU 1241 Oil Deposits L -DFS Time Limit:1000MS Memory Limit:10000KB 64bit IO Format:%I64d & ...
- HDU-1799(组合递推公式)
HDOJ-1799 - Fighting_Dream M - 暴力求解.打表 Time Limit:1000MS Memory Limit:32768KB 64bit IO Forma ...
- Boost使用笔记(Smart_ptr)
我是Word写的,复制过来实在懒得在排版了,有兴趣的朋友可以去我的百度文库看,谢谢 http://wenku.baidu.com/view/34e485e2f61fb7360b4c653e.html ...
- easyui combo+pagination 图标选择器
从数据库读取分页显示 $(function () { initTable(1, 180); $('#cc').combo({ editable: false, panelWidth: 'auto', ...
- putty登录远程数据库Oracle
ssh username@127.0.0.1 password oracle -su plusql /nolog dbname/dbpassword sql:exit oracle:$exit ssh ...
- nosql学习一
1.NoSQL,泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难 ...
- Fireworks Extension —— AutoSlice 介绍
前不久在网上到处瞎晃的时候,发现Adobe的软件几乎都可以写插件.Fireworks更是很早的版本就支持使用javascript编写插件,于是乎如入桃园,奋斗几日为VD小伙伴们写了一个插件,命名Aut ...
- 手工走一次OPENSTACK安装,掉一层皮啊
掉皮也是值得的,对OS的了解慢慢加深. 最近加入CS的Q群也学到不少.