`
javapolo
  • 浏览: 131564 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

div垂直对齐的实现方案

    博客分类:
  • js
阅读更多
Vertically centering text using CSSFiled under: CSS Stylesheets
As many people have discovered, there is no CSS definition for vertically centering text in a block element such as a div. One can achieve this in HTML and XHTML, by using a table and the attribute “valign=middle” to vertically center text, however when you want to achieve the same thing in CSS, that’s when it gets quite tricky.

There are a couple work arounds for this problem. Both these work arounds only work for ONE line of text, the solution for multiple lines of text will be posted soon.

Use vertical-align and an invisible image
Use line-height
1. Use vertical-align and an invisible image

Horizontal centering with CSS has been around for a while and can be easily achieved by using “text-align:center”. The closest definition for vertical alignment in CSS is “vertical-align” which may be top, middle or bottom.

vertical-align:top
vertical-align:middle
vertical-align:bottom

The problem with vertical-align is that it’s an inline style, so it won’t vertically center your text in a div when used by itself. For example:

<div style="width:25em; height:10em; border:1px solid #CECECE; vertical-align:middle">
This text should be vertically centered, but it's not.
</div>

This text should be vertically centered, but it’s not.
To use “vertical-align:middle” to center your text, you will need to put an image of the same height as your block element next to the text you want vertically centered. For example:

<div style="width:25em; height:10em; border:1px solid #CECECE">
<img src="/sg/t.gif" alt="" style="width:1px; height:10em; vertical-align:middle" />This text is vertically centered.
</div>*

This text is vertically centered.
* t.gif is a transparent gif of 1 x 1 pixel.

2. Use line-height(最佳)

To use line-height to vertically center text, specify the line-height to be the same height as the block element. For example:

<div style="border:1px solid #CECECE; width:25em; height:10em; line-height:10em">
One line of vertically centered text.
</div>

One line of vertically centered text.
分享到:
评论

相关推荐

    谷歌浏览器 div 水平对齐

    针对“谷歌浏览器 div 水平对齐”的问题,我们可以采用表格布局或绝对定位来实现兼容性。虽然方案一使用了非标准的 IE 私有属性,但仍然可以在老版本的 IE 中工作。而方案二则更加现代化,适用于更广泛的浏览器。在...

    CSS解决未知高度的DIV垂直居中

    ### CSS解决未知高度的DIV垂直居中 #### 知识点概述 在Web开发中,实现元素的垂直居中是一项常见的需求。对于已知高度的元素来说,这相对容易实现。但对于那些高度未知或者动态变化的元素,尤其是嵌套在另一个未知...

    jQuery实现上下左右垂直居中.zip

    "jQuery实现上下左右垂直居中.zip" 提供的是一个名为 "jquery.valign" 的插件,它专用于解决HTML元素(如图片、文字)在div容器内部的垂直对齐问题。下面将详细介绍这个插件的工作原理以及如何使用。 `jQuery....

    DIV和SPAN垂直居中对齐的实现方法

    本文主要探讨如何使用`div`和`span`元素实现垂直居中对齐,以及涉及到的关键CSS属性——`line-height`、`padding`和`vertical-align`。 首先,水平居中对齐相对简单,只需要对父元素设置`text-align: center;`,...

    div垂直居中

    标题 "div垂直居中" 描述的是一个常见的前端布局问题,如何在网页设计中让一个div元素在容器中垂直居中对齐。这个问题涉及到CSS(层叠样式表)的布局技术,尤其是定位和 Flexbox 或 Grid 等现代布局模式。 在传统的...

    DIV未知高度的垂直居中代码.rar

    标题中的“DIV未知高度的垂直居中代码”指的是在网页设计中如何使一个具有未知高度的&lt;div&gt;元素在页面上实现垂直居中的技术。在Web开发中,这是一项常见的需求,尤其是在响应式设计中,当内容高度不确定时,仍然希望...

    div垂直居中-CSS元素垂直居中方法的探究

    本课程"div垂直居中-CSS元素垂直居中方法的探究"深入探讨了如何在HTML中使用CSS实现元素的垂直居中。下面将详细介绍两种主要的解决方案:文本垂直居中和块级元素垂直居中。 首先,我们来讨论文本垂直居中。在HTML中...

    div的内容图片垂直居中代码(兼容多浏览器).rar

    4. **使用line-height**:如果div只有一个行内元素,如图片或文字,可以将`line-height`设为与div相同的高度来实现垂直居中。 ```css .parent { line-height: height; } .child { vertical-align: middle; } ``` ...

    css实现文本和div居中对齐详细讲解示例

    【CSS实现文本和div居中对齐】 在网页设计中,居中对齐是一种常见的布局需求,CSS提供了多种方法来实现文本和div的居中效果。以下是对这些方法的详细讲解: 1. **文本居中** - **水平居中(使用`text-align`)**...

    垂直居中显示ie7+

    本话题主要探讨如何在IE7及以上的浏览器中实现元素的垂直居中效果。 在IE7+中实现垂直居中,我们可以采用多种方法,每种方法都有其适用场景和优缺点。以下是一些常见的技术: 1. **CSS Table布局**: - 设置父...

    图片在div中垂直和水平同时对齐的实现方法

    在网页布局设计中,使图片在`div`中垂直和水平居中是一项常见的需求。这不仅可以提供整洁的视觉效果,也可以使页面在不同屏幕尺寸下保持良好的响应式表现。以下是一些实现这种对齐方式的方法: 1. **使用Flexbox...

    div不定宽高的水平和垂直居中

    综上所述,针对“div不定宽高的水平和垂直居中”以及兼容IE67的需求,我们可以选择使用CSS传统方法(如绝对定位)或者结合JavaScript来实现。考虑到不同的浏览器兼容性和场景适应性,应根据实际项目需求来选择最合适...

    DIV+CSS上下左右绝对居中

    Flexbox 是现代CSS布局模式,特别适合处理元素的对齐和分布。对于上下左右绝对居中,我们可以设置容器的 `display` 为 `flex`,并使用 `align-items` 和 `justify-content` 属性: ```css .container { display...

    div水平垂直居中的完美解决方案

    本文主要探讨的是如何使用CSS来实现`div`元素的水平和垂直居中。我们将通过两种不同的方法来详细讲解这一主题。 首先,我们来看一种简单的方法,即实现水平居中。通过设置`div`的`margin`属性,可以轻松地使其在父...

    IE6 div最小高度去除方法以及IE6div垂直居中css样式

    本篇文章将探讨两个在IE6中常见的问题及其解决方案:去除div最小高度限制和实现div垂直居中。 首先,让我们解决IE6中的div最小高度问题。在IE6中,当尝试设置一个较小的高度(如3px)时,div的实际高度可能不会按照...

    图片水平垂直居中

    首先,我们可以使用CSS的Flexbox布局来实现图片的水平垂直居中。Flexbox是一个强大的容器模型,它允许我们轻松地调整子元素的布局、对齐和分布,而无需复杂的定位技巧。 1. 创建一个包含图片的容器: ```html &lt;div ...

    div图片垂直居中 如何使div中图片垂直居中

    首先,我们将`div.box`的`display`属性设置为`table-cell`,这使得`div`具有表格单元格的行为,允许我们使用`vertical-align`属性来控制内部元素的垂直对齐。接着,`vertical-align: middle`确保了图片在垂直方向上...

    实现DIV层内的文字垂直居中(单行文字/多行文字)

    本文主要探讨如何实现在DIV层内的文字垂直居中,无论是单行文字还是多行文字。 对于单行文字的垂直居中,最简单的方法是利用CSS中的`line-height`属性。`line-height`属性定义了行内元素之间线框的距离,当将其值...

    图片垂直居中之姊妹 DIV垂直居中

    本篇将探讨两种方法实现`div`的垂直居中,分别基于CSS的`expression`属性和使用`position: absolute`配合`margin`调整。 首先,我们来看第一种方法,利用`expression`属性。`expression`是Internet Explorer特有的...

Global site tag (gtag.js) - Google Analytics