当前位置:Web前端 > css> 正文

css如何让图片居中

时间:2013-10-30类别:Web前端

css如何让图片居中

css如何让图片居中

 

图片居中又分为水平居中和垂直居中。不同的居中方式有不同的实现方法

 

一、水平居中:

1、单独文字垂直居中我们只需要设置CSS样式line-height属性即可。

2、文字与图片同排,在设置li高度同时再对此css样式的图片“img”样式设置vertical-align:middle垂直居中属性,如.yangshi img{vertical-align:middle;} 。

3 不确定宽度的块级元素设置水平居中的方法

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

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

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

 

二、垂直居中:

 

1.对这个CSS居中问题,我们可以使用设置背景图片的方法。举例:


body {BACKGROUND: url(”图片文件”) #FFF no-repeat center;}


关键就在于这个Center属性,它表示让该背景图片在容器中居中。你也可以把Cener换成Top Left或者直接写上数字来调整它的位置。

 

2.如何使文本在li中垂直居中


对于文字,便不能用背景方法,可以用增高行距的办法变通实现垂直居中,示范代码如下:


#center{ MARGIN-RIGHT: auto; MARGIN-LEFT: auto; height:200px; vertical-align:middle; line-height:200px; }
<li id=”center”><p>test content</p></li>


说明:
vertical-align:middle;表示行内垂直居中,我们将行距增加到和整个li一样高line-height:200px;然后插入文字,就垂直居中了。

 

三、图片垂直居中的实例:

 

  •  
  • CSS 代码   复制
  • 
    .new_proimg{
     display: table-cell; /*非IE的主流浏览器识别的垂直居中的方法*/
     vertical-align:middle; /*非IE的主流浏览器识别的垂直居中的方法*/
     text-align:center; /*设置水平居中*/
     *display: block; /* 针对IE的Hack */
     *font-size: 104px; /*约为高度的0.873,120*0.873 约为104*/
     *font-family:Arial;  /*防止非utf-8引起的hack失效问题,如gbk编码*/
     width:120px;  
     height:120px;
     margin-bottom: 5px;
     border: 1px solid #eee;
    }
    
    		
  •  

    图片垂直居中效果图:

     

     

    四、图片垂直居中建议:

    1、单独文字垂直居中我们只需要设置CSS样式line-height属性即可。

    2、文字与图片同排,在设置li高度同时再对此css样式的图片“img”样式设置vertical-align:middle垂直居中属性,

    如.yangshi img{vertical-align:middle;} 。

     

     

    标签:
    上一篇下一篇

    猜您喜欢

    热门推荐