段正淳的css笔记(5)未知图片垂直居中的方法
作者:正淳 来源:ued.taobao.com 时间:2007-11-01 22:06:00
阅读作者上一篇文章:段正淳的css笔记(4)css代码的简写
CSS未知图片垂直居中的方法:
一天大家在团队中讨论“未知图片垂直居中”的问题,突发奇想用vertical-align:middle这个属性来实现,于是抽了时间做了下面这个不成熟的例子:
CSS:
div{
width:140px;
height:140px;
text-indent:-8px;
text-align:center;
line-height:138px;
background:red;
font-size:12px;
*font-size:120px;
*text-indent:-60px;
}
img{
width:100px;
height:100px;
vertical-align:middle;
}
HTML:
< div>& nbsp;<img src="ipodclassics.jpg" alt="iPod classic" />
初衷是不想用position来做,毕竟 大量的图片显示浏览器在渲染的时候会消耗 较多的资源。
缺点是 输出了 无意义的nbsp;, 而且font-size和font-indentd的计算公式不是很简单(所以以上的数字都是凑的^_^).
后来小马见了这个思路,用了点时间升级了代码,用:after输出代替了无趣nbsp ,代码见下:
CSS:
.tb-p-c{
display: block;
width:140px;
height:140px;
line-height:140px;
text-align:center;
*font-size:123px;
}
.tb-p-c img{
vertical-align:middle;
}
.tb-p-c:after {
content: ".";
visibility: hidden;
font-size: 12px;
margin-left: -5px;
}
HTML:
<a class="tb-p-c"><img src="jishi070912_2.jpg" /></a>
这样子,恼人的nbsp消失了。大家对vertical-align:middle的渲染方式有了更进一步的了解了。还让很多同志发现了after这个伪类还可以用来hack.
结果圆心又给CSS升了次级:
CSS:
.tb-p-c{
display: table-cell;
vertical-align:middle;
width:140px;
height:140px;
text-align:center;
*display: block;
*font-size: 122px;
background:red;
}
.tb-p-c img {
vertical-align:middle;
}
这是第三次的升级,由于时间关系,没有测试上面的代码,原因是利用了display来渲染,感觉上还是会让浏览器多次渲染,所以偶没测试-_- 。
这次探讨给了我们很多很多的收获,相信如果有大家的参与,会有更多方式和我们没发现的观点。大伙别小气,多发表回复,一起提高。
标签:垂直居中,居中,图片,淘宝,css
0
投稿
猜你喜欢
使用python3 实现插入数据到mysql
2024-01-15 07:53:22
logrus日志自定义格式操作
2024-04-26 17:20:24
各种 lightbox 实现效果介绍
2007-11-06 19:16:00
用python给csv里的数据排序的具体代码
2021-02-15 01:12:25
Python命令行参数解析包argparse的使用详解
2021-04-01 01:58:52
ASP.NET MVC4入门教程(六):验证编辑方法和编辑视图
2024-05-13 09:15:36
python3之模块psutil系统性能信息使用
2022-02-19 16:43:52
详解Python pygame安装过程笔记
2023-07-24 12:20:36
JS关于刷新页面的相关总结
2024-04-22 12:52:36
Python学习之集合set
2021-07-25 10:44:34
Python Opencv图像处理基本操作代码详解
2023-06-08 08:08:05
通过自定义字段重新排序 WordPress 文章方法
2023-12-14 21:52:53
Python实现文字pdf转换图片pdf效果
2021-03-10 23:20:03
PHP7正式版测试,性能惊艳!
2023-09-12 07:41:43
centos 7安装mysql5.5的方法
2024-01-22 01:29:32
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
2021-04-09 18:33:05
用CSS制作兼容多浏览量器的隐藏菜单
2007-08-30 09:05:00
MySQL表排序规则不同错误问题分析
2024-01-25 08:12:30
VUE-ElementUI 时间区间选择器的使用
2024-05-09 15:12:21
python计算机视觉OpenCV库实现实时摄像头人脸检测示例
2022-05-17 22:41:50