CSS教程:vertical-align的值
最近我对CSS中的vertical-align属性进行了深入研究,结果让我深感震惊。这个看似普通的属性,在各大浏览器中的表现竟然千差万别。
vertical-align属性拥有众多值,包括baseline、sub、super、top、text-top、bottom、text-bottom、middle以及各种长度值(%、em、ex等)。以其中的bottom值为例,当应用于图片等内联元素时,其表现效果在各大浏览器中截然不同。
在一段简单的CSS代码下:
```css
p { font-size: 18px; line-height: 36px; font-family: Tahoma, sans-serif;}
img { vertical-align: bottom;}
```
这段代码的视觉效果在各大浏览器中的表现让人大跌眼镜。原以为Firefox会给出更准确的解释,然而Opera和IE的表现却与Firefox大相径庭,Safari/Win则站在了Firefox一边。这种现象背后的原因令人困惑。
根据《CSS权威指南(第二版)》和W3C的定义,当内联元素的vertical-align设置为baseline、top、bottom时,该元素的相应位置(如图片的top)会与其周围元素的相同位置对齐。而text-top和text-bottom时,则是该元素的顶部或底部对齐周围元素的文本顶部或底部。当使用长度单位(%、em、ex)时,则是基于基线向上移动,正数向上,负数向下。而设置为middle时,该元素的中心会与周围元素的中心对齐。
即便是按照这些准则,各浏览器之间的解释差异仍然让人费解。这种差异不仅与vertical-align有关,更与浏览器对内联文本和内联图片结构的解读密切相关。
为了更直观地观察各浏览器对vertical-align不同值的解读结果,我提供了一个测试页面。在这个页面上,你可以方便地测试其他值,如middle和text-top,你会发现它们的浏览器表现也各不相同。如果你有什么心得和想法,欢迎大家一起讨论交流。点击这里可以查看测试页面:[测试页面链接]( `cambrian.render('body')`,在此文中并无实际作用或意义,已做过滤处理。
编程语言
- CSS教程:vertical-align的值
- FLASH中怎么制作图片连动开合动画效果-
- Win10 Mobile RedStone预览版14267已知问题与修复内容汇
- CSS实现TikTok文字抖动效果示例
- 笔记本怎么截图怎么快捷键截图全屏截图方法有
- 如何删除系统不用的字体来节省系统空间-
- CAD复制粘贴后图纸比原图纸要大该怎么办-
- spamsub.exe - spamsub进程是什么文件
- HTC回应裁员:某些业务将战略收缩
- Illustrator(AI)利用宽度工具设计制作汽车海报实例
- 几个技巧 教你用手机也能拍摄好看的图片
- 卢松松博客iPhone和Android客户端发布
- div被iframe遮住的几种情况及解决方法
- Windows7远程桌面连接提示要求的函数不受支持如何
- 使用CSS 给表单必选项添加星号的实现方法
- 小新Air14 2019什么时候上市 联想小新Air14配置介绍