vertical-align的定义
W3C上对vertical-align的定义:vertical-align 属性设置元素的垂直对齐方式。该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐。允许指定负长度值和百分比值。这会使元素降低而不是升高。在表单元格中,这个属性会设置单元格框中的单元格内容的对齐方式。
文本通常根据不可见的基线进行对齐的,而字母的底部位于基线之上。vertical-align属性可以在文字的基线之上或之下提升或降低字母或图像。vertical-align属性的值有baseline、sub、super、top、text-top、middle、bottom、text-bottom、、等,其中初始值为baseline。
baseline(基线)??将子元素的基线与父元素的基线相对齐。对于没有基线的元素,如图像或对象,则使它的底部与父元素的基线对齐。
sub(下面)??把元素置于下方(下标),确切地说是使元素的基线对齐它的父元素首选的下标位置。
super(上面)??把元素置于上方(上标),确切地说是使元素的基线对齐它的父元素首选的上标位置。
text-top(文本顶部)??使元素的顶部与其父元素最高字母的顶部相对齐。
top(顶部)??使元素的顶部与行中最高事物的顶部相对齐。
middle(中间)??使元素垂直居中。
bottom(底部)??使元素的底部与行中最低事物的底部相对齐。
text-bottom(文本底部)??使元素的底部与其父元素字体的底部相对齐。
vertical-align的解读
W3C上对vertical-align的定义,大体上可以分为两个部分:
第一种用法,先看后面一句“在表单元格中,这个属性会设置单元格框中的单元格内容的对齐方式。”这很容易理解,如果给一个表格的td加一个vertical-align:middle的样式,表格里面的内容会垂直居中,同样的如果给一个vertical-align:bottom就会底部对齐,如果给一个vertical-align:top就会顶部对齐。
第二种用法,看前页一句“该属性定义行内元素的基线相对于该元素所在行的基线的垂直对齐。”专业的语言我不会说的,可以打个比喻:假设有两个行内元素a和b,a和b都是img,当a加了一个vertical-align:middle样式之后,b的底部(基线)就会对齐a的中间位置,如下图:
如果a和b都加了一个vertical-align:middle样式,那么就互相对齐了对方的中间位置,也就是它们在垂直方向上的中线对齐了,如下图:
比如,img和span一起出现,要想文字对齐图片的中间位置,就需要为图片添加img{vertical-align:middle;}
再比如input和span连用时,谷歌火狐IE8以上版本里默认的是span在input的中间位置,但ie6/ie7里,span底部和input底部对齐,实现统一的办法就是给input添加input{vertical-align:middle;},要想它们垂直方向上的中线对齐,就同时也为span设置span{vertical-align:middle;}
vertical-align的使用
1.用于内联元素
下面以图像的垂直对齐为例子说明一下vertical-align属性的用法。
img{ vertical-align:middle;}看看我的位置
查看更多关于CSSvertical-align属性的用法_html/css_WEB-ITnose的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did108602