当前位置: 网站建设 > 网页设计 > 建站经验 >

利用CSS让元素垂直居中的两种实现方法

时间:2013-03-02 03:57来源:未知 作者:admin 点击:

标签:利用CSS让元素垂直居中的两种实现方法 利用(28)实现(100)中的(55)CSS(655)C(23)元素(40)方法(92)两种(11)div(47)垂直(12)
div class=container div class=vert h1Hi, I'm Nested spanVertically Aligned/span/h1 pAbigo sudo mara paulatim odio, accumsan luptatum nibh nibh refero metuo opes ut fatua. Acsi et fere similis strongUsing/strong augue strongabsolute/strong validus. Regula
利用CSS让元素垂直居中的两种实现方法》文章地址:http://www.tfxk.com/wangyesheji/jianzhanjingyan/0302339132013.htm

<div class="container">
 
         <div class="vert">
 
          <h1>Hi, I'm Nested &<span>Vertically Aligned</span><,利用css的border属性实现导航条三角效果代码;/h1>
 
          <p>Abigo sudo mara paulatim odio, accumsan luptatum nibh nibh refero metuo opes ut fatua. Acsi et fere similis <strong>Using</strong> augue <strong>absolute</strong> validus. Regula <strong>positioning</strong> eu jus vel, indoles fere iaceo ea similis. Velit praemitto nulla vel luctus secundum. </p>
 
         </div>
 
</div>

问题延长

如果元素的外面还有一个父级元素,如果能力让元素垂直居中于父级元素内部?比方下面的代码,多了一个父级元素

Tag:实现   方法   垂直   元素   利用     实现   方法   垂直  ,利用CSS的@font-face属性 在网页中嵌入字体; 元素   利用    

.vert {
 
        width: 580px;
 
        height: 190px;
 
        position: absolute;
 
        top: 50%;
 
        left: 50%;
 
        margin: -95px 0 0 -290px;
 
}

body {
 
        margin: 0;
 
        padding: 0;
 
        background: #1d1d1d;
 
        font-size: 10px;
 
        font-family: Verdana, Arial, Helvetica, sans-serif;
 
}
 
h1 {
 
        font: 4em Georgia, "Times New Roman", Times, serif;
 ,利用CSS滤镜让网页效果更有风格;
  ,利用CSS制作动感导航栏;      color: #fff;
 
        border-bottom: 5px dotted #999;
 
        margin: 0;
 
        padding: 0 0 10px;
 
}
 
h1 span {
 
        font-weight: bold;
 
        display:block;
 
 ,利用CSS优化,让你的站点加载的更快;       font-size:1.5em;
 
        color: #fff000;
 
}
 
p {
 
        font-size: 1.3em;
 
        color: #999;
 
}
 
strong {
 
        color: #fff;
 
}
 
.vert {
 
 ,利用css3绘制小图标的效果;       width: 580px;
 
        height: 190px;
 
        position: absolute;
 
        top: 50%;
 
        left: 50%;
 
        margin: -95px 0 0 -290px;
 
}

 <h1>Hi, I'm<span>Vertically Aligned</span> Within the H1</h1>

CSS代码:

body {
 
         margin: 0;
 
         padding: 0;
 
         background: #1d1d1d;
 
         font-size: 10px;
 
         font-family: Verdana, Arial, Helvetica, sans-serif;
 
}
 
h1 {
 
         font: 3em Georgia, "Times New Roman", Times, serif;
 
         color: #fff;
 
         height: 500px;
 
         line-height: 500px;
 
         text-align:center;
 
         border: 10px solid #999;
 
}
 
h1 span {
 
         font-weight: bold;
 
         font-size:1.5em;
 
       ,利用CSS3的checked伪类实现OL的隐藏显示;  color: #fff000;
 
}
 
p {
 
         font-size: 1.3em;
 
         color: #999;
 
}
 
strong {
 
         color: #fff;
 
}

CSS代码:
这种用相对定位来实现的垂直居中,取决与元素的宽度和高度,你可以用下面这两个公式来计算元素的左边距跟上边距

元素的宽度/2 = 负左边距
元素的高度/2 = 负上边距

在这个例子中,咱们就是这么盘算的

这时候,就必需在定义父级元素的CSS代码中参加position: relative;才干够使内部元素垂直居中于父级内部,代码如下:

方法二:利用绝对定位

先来看看后果,查看演示
这个方式有个毛病我必须指出,就是外面的块状元素,必须指定高度,所以假如你在里面放动态的内容的话,成果会很蹩脚滴~

HTML代码:

<div class="vert">
 
        <h1>Hi, I'm<span>Vertically Aligned</span></h1>
 
        <p>Abigo sudo mara paulatim odio, accumsan luptatum nibh nibh refero metuo opes ut fatua. Acsi et fere similis <strong>Using</strong> augue <strong>absolute</strong> validus. Regula <strong>positioning</strong> eu jus vel, indoles fere iaceo ea similis. Velit praemitto nulla vel luctus secundum. </p>
 
</div>

.container {
 
        position: relative;
 
        height: 500px;
 
  ,初识高并发网站系统架构;      width: 800px;
 
        border: 10px solid #999,初识CSS(初学者必看);
 
     ,初学CSS要注意IE6注释bug;   background: #000;
 
        margin: 20px;
 
}

--> [网站建设之]应用CSS让元素垂直居中的两种实现办法

方法一:利用行高(line-height)定位

line-height通常是用于调节一段文字的行与行之间的距离,或者说两行文字之间的距离,如果行高是500px,那么每一行中的文字间隔本行的顶部就是250px,如果将文字的行高设为500px,并且外面的容器的高度也为500px,同样能够实现垂直居中,然而用它来实现垂直居中,也是有缺陷的,就是如果内容过多,文字就会跑到下一行,那么内容就不可能垂直居中了。

HTML代码:

完全CSS代码


(责任编辑:网站建设)
利用CSS让元素垂直居中的两种实现方法相关文章
上一篇:利用css的border属性实现导航条三角效果代码 下一篇:利用label标签和CSS美化文件上传表单(不兼容IE6)
回到顶部