论坛交流
首页办公自动化| 网页制作| 平面设计| 动画制作| 数据库开发| 程序设计| 全部视频教程
应用视频: Windows | Word2007 | Excel2007 | PowerPoint2007 | Dreamweaver 8 | Fireworks 8 | Flash 8 | Photoshop cs | CorelDraw 12
编程视频: C语言视频教程 | HTML | Div+Css布局 | Javascript | Access数据库 | Asp | Sql Server数据库Asp.net  | Flash AS
当前位置 > 文字教程 > div+css教程
Tag:css,入门,技巧,div,实例,示例,菜单,布局,web2.0,ul,li,经验,列表,web标准,xhtml,web标准,浏览器,兼容,css hack,表格,视频教程

CSS教程:文字图片水平对齐vertical

文章类别:div+css | 发表日期:2012-3-19 10:36:44

DIV+CSS教程:文字图片水平对齐-vertical

    最近接触了许多 关于图片文字水平对齐的需求,然后发现如果单单将vertical-align 设置为middle 的话,不同浏览器下居中对齐的位置有偏移,让人很头疼。

    网上搜了下好像也没有搜到相关的分析,大部分都是垂直居中的案例,
于是专门针对vertical-align 做了次分析,
demo 传送门: vertical-align 各属性分析 有错误欢迎学习者能够纠正哦!

一些心得体会:

vertical-align 定义
     最初我认为的vertical-align 解释 跟text-align 一样,是容器内部的非block 元素居中对齐,但从w3c 官方对 vertical-align 各属性的解释来看,vertical-align 是定义当前节点,跟外围内容的对齐方式,跟text-align 的解释是不一样的。

vertical-align:baseline 基线对齐
    分析所得,发现baseline不是在中文字的可见部分最下方,而是在英文字的可见部分最下方。
    然后发现图片对齐的时候是以图片的最下方同相邻文字的 baseline 对齐。一直觉得为啥图片下方会有4像素的空白,现在明白了

不同字体会有不同效果
我这个demo 用的Tahoma 字体,发现如果使用类似 Yahei 等中文字体,在IE低版本下会有出现一些奇怪的现象,详细可以看demo。

vertical-align 最好不要混用
    从定义来理解,就发现这个vertical-align 最好不要混用。因为本身不同属性会产生各种各样的兼容问题,如果混用,估计会出现更复杂的现象。虽然我也没有深入研究,但我觉得混用不太靠谱。

vertical-align: px 定位最稳定
   
这个属性一直都没怎么用,原先一直用middle 来实现水平对齐,在一次偶尔的项目代码里发现的。
    相对定位是相对于baseline的偏差定位,负值代表图片相对baseline往下移。
   在研究中发现使用相对定位兼容性最好,只有IE7会有2px的偏差,但基本可以无视,因为目前IE7的用户可以忽略不计。
不过这种方法也不是万能的,
   因为是相对于baseline的相对定位,如果文字变大后,图片的对齐位置 看起来就不会跟着移动区别于middle属性,不过个人觉得这样的情况出现概率不大,并且字大了再针对调整也没问题。
另外图片大小不一样大相应的负值也不相同,详细见demo。

vertical-align 最佳兼容方案

  
前面说了这次研究没有白费,个人推荐的vertical-align 用法如下:
1. 尽量保持主内容的 vertical-align 是baseline 即默认的,不要把vertical-align 当text-align 来理解使用。
2. 针对 内部需要调整位置的 图片等 进行 px 定位。
优点:保证外围的vertical-align 是默认值,不产生混用现象。
缺点:针对不同尺寸的图片要针对进行定位,不过一般ico 大小差不多大,可以统一调整。

视频教程列表
文章教程搜索
 
div+css推荐教程
div+css热门教程
看全部视频教程
购买方式/价格
购买视频教程: 咨询客服
tel:15972130058