美文网首页
2017-2-26(html中的居中)

2017-2-26(html中的居中)

作者: 721d739b6619 | 来源:发表于2017-02-26 15:46 被阅读31次

通常情况下设置元素的文本、图片等行内元素水平居中,通过给父元素设置text-align:center 实现。

这里div就是文本的父元素。

给固定宽度的元素设置水平居中:

图中的灰色div就就是固定宽被水平居中了。

给不定宽度的元素设置水平居中:

这里有三种方法:

第一种:通过给父元素设置float,然后给父元素设置position:relative和left:50%,子元素设置position:relative和left:-50%来实现水平居中。(经测试这种方法好像没有下面介绍的两种方法准确)

第二种方法:改变块级元素的display为inline类型(设置为行内元素显示),然后使用text-align:center来实现居中效果。

html标签还是那些标签知识css更改了。

第三种:加入table标签,利用table标签的长度自适应性---即不定义其长度也不默认父元素body的长度(table其长度根据其内文本长度决定),因此可以看做一个定宽度块元素,然后再利用定宽度块状居中的margin的方法,使其水平居中。

下面说垂直居中:

第一种情况:如果一个容器中只有一行文字,对它实现垂直居中,只需要设置它的实际高度height和所在行的高度line-height相等即可。

这段代码很简单,后面使用overflow:hidden的设置是为了防止内容超出容器或者产生自动换行,这样就达不到垂直居中效果了。

第二种情况:多行未知高度文字的垂直居中:

就是设定Padding,使上下的padding值相同即可。同样的,这也是一种“看起来”的垂直居中方式,它只不过是使文字把<div>完全填充的一种方式而已。

第三种情况:多行文本固定高度的居中

通过vertical-align属性,但这个属性不是所有元素都有,所以再通过display属性能够模拟<table>标签。还有需要注意的是:display:table和display:table-cell的使用方法,前者必须设置在父元素上,后者必须设置在子元素上,因此要为需要定位的文本再增加一个<div>元素

相关文章

网友评论

      本文标题:2017-2-26(html中的居中)

      本文链接:https://www.haomeiwen.com/subject/yhiowttx.html