CSS文字图片div元素居中方法之水平居中

  文字居中,文字垂直居中水平居中,图片居中,图片水平居中垂直居中,块元素垂直居中?当我们在做前端开发是时候关于css居中的问题是很常见的。情况有很多种,不同的情况又有不同的解决方式。水平居中的方式解决的时候相对来说通过css比较容易设置,垂直居中相对比较棘手。

  先来说一下水平居中的不同情况与不同解决方法吧。

  1文本,图片等行内元素的水平居中方法呢比较简单。直接给父元素设置一个text-align:centent属性就可以实现元素的水平居中了。

  2 确定宽度的块级元素水平居中怎么设置呢?设置方法也不难,可以通过设置外边距,margin:0 auto;这句来实现确定宽度的块级元素水平居中。

  3 不确定宽度的块级元素设置水平居中的方法有多种,这里介绍三种方法给大家。

  第一种方法呢,是使用table作为容器的方法来实现。当然不大推荐使用这种方法,因为添加了无意义的标签。这里就稍微介绍一下吧。Table标签本身并不是块级元素,当我们不设置table的宽度的话,他里面的宽度是由他内部元素的宽度撑起来的。但即使我们没有设置table的宽度,直接设置table的外边距margin:0 auto;就可以实现水平居中了!这样我们就可以通过设置table水平居中,间接使里面的内容居中。

  第二种方法,相对于用table的方法的好处是不用增加无语义标签,简化标签嵌套深度。这个思路是这样的,通过改变块级元素的display属性值为inline类型,然后设置text-align:center来实现居中。这种方法也有一定不妥之处就是把块级元素改为行内元素后,行内元素比块元素少了一些功能。比如说设定长宽值等,在项目运用中可能会有一些限制,大家可以自行选择。

  下面是第三种方法。通过给父元素设置浮动float,再设置父元素的position属性为relative和left:50%;子元素设置position:relative和left:-50%来实现水平居中。这个好处是可以保留块级元素仍然是以display:block的形式显示,不会添加无意义的标签,不添加嵌套深度。确点是设置了position:relative;带来了一些副作用。下面是第三种方法的实例代码,放到body标签里面就可以了。

<div style=”width:400px;height:300px;background:#333;”>

<ul style=”margin:0 auto;float:left; position:relative; left:50%;list-style:none; padding:0;”>

<li style=”position:relative; left:-50%;float:left”>OKOKOKOKKOOKK</li>

</ul>

</div>

  三种方法使用都比较广泛,都有缺点和优点。具体选择哪种方法可视情况而定。Css文字图片块元素水平居中的方法就介绍到这里。

  本文首发于:五指前端

时间: 2024-09-30 19:37:44

CSS文字图片div元素居中方法之水平居中的相关文章

css中文字图片背景图居中的方法汇总

一.让网页所有DIV标签内文字居中   -   实现所有DIV内字体居中实例完整网页源代码: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta charset="utf-8" /> <title>div字体居中实例</title> <style> div{text-align:center

CSS Div完美居中方法

CSS中有很多(水平/垂直)居中的方法今天刚好看到一个新的方法,嘿嘿,自我感觉一下非常好用.而且以前我也没见过.所以今天就记一下.下次备用 HTML  代码如下 复制代码 <DIV class="demo center"> <DIV></DIV></DIV>CSS .center{ /* 需要宽度支持但自适应 */  position:relative; } .center>*{ /* ie8+,ie7-请使用js或者其它方法 */

用CSS控制图片自适应大小的方法

css|控制|自适应 网页制作技巧实例解决:用CSS控制图片自适应大小 图片自动适应大小是一个非常常用的功能,在进行制作的时候为了防止图片撑开容器而对图片的尺寸进行必要的控制,我们可不可以用CSS控制图片使它自适应大小呢? 我们想到了一个比较简单的解决方法,虽然不是非常的完美,如果您的要求不是非常高,已经可以满足你的需要了.我们看下面的代码: div img { max-width:600px; width:600px; width:expression(document.body.client

CSS如何使DIV层居中

 主要的样式定义如下: body {TEXT-ALIGN: center;} #center { MARGIN-RIGHT: auto; MARGIN-LEFT: auto; }  说明: 首先在父级元素定义TEXT-ALIGN: center;这个的意思就是在父级元素内的内容居中:对于IE这样设定就已经可以了.但在mozilla中不能居中.解决办法就是在子元素定义时候设定时再加上"MARGIN-RIGHT: auto;MARGIN-LEFT: auto; " 需要说明的是,如果你想用

绝对定位的div的居中方法,下面的写法兼容IE系列浏览器和火狐浏览器。

详细解说,直接看样式: #dingwei{padding:10px;background-color:#003300;color:#FFFFFF;  width:600px;height:300px;  display:block;   position: absolute;  top:50%;  left:50%;  margin-left:-300px;  margin-top:-150px;} padding:10px;background-color:#003300;color:#FFF

CSS中div高度内容垂直方向居中方法总结

让div中的内容垂直居中,无非有以下几种方法,等我一一列举:  一.行高(line-height)法  如果要垂直居中的只有一行或几个文字,那它的制作最为简单,只要让文字的行高和容器的高度相同即可,比如:   代码如下 复制代码 p { height:30px; line-height:30px; width:100px; overflow:hidden; }   这段代码可以达到让文字在段落中垂直居中的效果.  二.内边距(padding)法  另一种方法和行高法很相似,它同样适合一行或几行文

学习CSS技巧:DIV下图片自适应解决方法

css|技巧|解决|自适应 我们(特别是像我一样的菜鸟)经常会遇到一个问题--图片自适应.这个问题是很普遍的.在文章区,在论坛,可以这么说:哪儿需要上传图片,哪儿就存在这个问题,而论坛上也不时有人询问.为什么?原因很简单,我们不能要求网页编辑或者你的论坛会员都会裁剪图片或者了解最基本的html代码--尽管这并没有多少技术含量. 以前的解决方法主要是利用js来实现,但用过的人都知道该办法有点繁琐.还有一种是在外部容器定义over-flow:hidden.但这种办法只会切割图片而不会自动适用.下面的

css控制div中元素居中的示例

 div中行级元素居中   代码如下: <div class="treeTitle"> <img src="images/app.png" /> <span>导航菜单</span> </div> 要求:将<img>和<span>标签居中   解答:div为块级元素,img和span为行内元素.所以这个问题归结为块级元素中的行内元素的居中问题.   代码如下: #treeTitle {

js+CSS实现弹出居中背景半透明div层的方法

 这篇文章主要介绍了js+CSS实现弹出居中背景半透明div层的方法,涉及javascript操作弹出div层的操作技巧,非常具有实用价值,需要的朋友可以参考下     本文实例讲述了js+CSS实现弹出居中背景半透明div层的方法.分享给大家供大家参考.具体实现方法如下:   代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1