html - 如何按x轴拉伸表格单元格中的背景图像?
问题描述
我目前正在为网站设计导航栏;我使每个导航栏“选项卡”成为表格中的一个数据单元格,每个单元格中都有一个背景图像。因为我的背景图像不是单元格的确切宽度,所以背景图像不跨越单元格的宽度。
如何在表格单元格中拉伸背景图像的 x 轴,同时保持图像的整个高度?或者换句话说,我如何不保持背景图像的纵横比,同时仅使用 CSS 将其拉伸到某个方向?我对图像的垂直度感到满意,但我想将其水平拉伸。
希望这是有道理的。
这是我所拥有的,代码方面:
<div class="navbar">
<table width="100%" border="0" cellspacing="0" cellpadding="0" text-align=>
<tr>
<td class="navtab"><a href="index.html">HOME</a></td>
<td class="navtab"><a href="hours-location.html">HOURS AND LOCATION</a></td>
<td class="navtab"><a href="#">ABOUT US</a></td>
<td class="navtab"><a href="#">CONTACT US</a></td>
</tr>
</table>
</div>
.navtab {
background-image: url(navtab.png);
background-size: 100%, auto;
height: auto;
width: 200px;
display: table-cell;
}
解决方案
下面的注释示例,关键样式是background-size
我用来水平而不是垂直拉伸图像:
.skinny-image {
/* using 100x100 image */
background: url(https://source.unsplash.com/random/100x100);
/* 100% width on the x-axis, use image dimensions for y-axis */
background-size: 100%, auto;
height: 100px;
/* but our cell is 200px wide */
width: 200px;
display: table-cell;
}
<div class="skinny-image"></div>
使用上面的示例代码:
.navtab {
background-image: url(https://source.unsplash.com/random/100x100);
background-size: 100%;
}
<div class="navbar">
<table width="100%" border="0" cellspacing="0" cellpadding="0" text-align=>
<tr>
<td class="navtab"><a href="index.html">HOME</a></td>
<td class="navtab"><a href="hours-location.html">HOURS AND LOCATION</a></td>
<td class="navtab"><a href="#">ABOUT US</a></td>
<td class="navtab"><a href="#">CONTACT US</a></td>
</tr>
</table>
</div>
推荐阅读
- dart - 使用 dart 的 Telnet 协议
- r - r:在 ggplot 图中插入 ggtexttable()
- html - Cordova,HTML5 视频不响应触摸输入
- python - 收到错误“modulenotfounderror:没有名为“google”的模块”,但是当尝试通过命令提示符安装时,它说要求已经满足
- java - 如何为 ActiveMQ 队列创建 Spring Boot 消费者?
- javascript - 循环遍历 Javascript 对象以构建嵌套列表
- java - 将文本作为短信中的超链接
- reactjs - 可以从反应应用程序中打开“位智”吗?
- linux - Kubernetes 中的 UDP 发送和接收
- java - 如何保护你的drawables、xml文件和数据库?