HTML中做的表格为什么填充 间距 边框 三个都设置为0了,表格内部行与列之间还是有空隙。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML中做的表格为什么填充 间距 边框 三个都设置为0了,表格内部行与列之间还是有空隙。相关的知识,希望对你有一定的参考价值。
代码如下:
<div style="width:985px; margin:auto; padding:0;">
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="images/8888_01.gif" /></td>
<td><img src="images/8888_02.gif" /></td>
<td><img src="images/8888_03.gif" /></td>
</tr>
<tr cellpadding="0" cellspacing="0">
<td ><img src="images/8888_04.gif" /></td>
<td><img src="flash.gif" width="305" height="217" /></td>
<td><img src="images/8888_06.gif" /></td>
</tr>
<tr cellpadding="0" cellspacing="0">
<td><img src="images/8888_07.gif" /></td>
<td><img src="images/8888_08.gif" /></td>
<td><img src="images/8888_09.gif" /></td>
</tr>
</table>
效果图在这里,如图示还是有空隙啊!很急啊!!我的图片是一张大图有PS的切片工具给切的。大虾们放大我们图片就能看到,其实只有三个部分有空隙,右上角的图片竟然没有空隙!!!真心搞不懂了,在线等帮助,可行立马给分。谢谢大家·····额!!我真的不好意思说了事实证明了,是我用PS切片的时候自动切出来图片高度不一致导致的,而我又一直以为是代码的问题,感谢大家的热心帮忙,我虽然有财富,但是限定只能给一位大侠,所以分就给最热情的:xiaoxiaomao55同学,感谢大家对我这菜鸟的帮助!做惯了后台第一次做前台不是很习惯!真抱歉!嘿嘿····
是因为图片没有填充满格子,试试看类似这样:
<!DOCTYPE html><html>
<head>
</head>
<body>
<div style="width:985px; margin:auto; padding:0;">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td ><img src="GotJobButton.png" /></td>
<td ><img src="GotJobButton.png" /></td>
<td ><img src="GotJobButton.png" /></td>
</tr>
<tr cellpadding="0" cellspacing="0">
<td ><img src="GotJobButton.png" /></td>
<td ><img src="GotJobButton.png" /></td>
<td ><img src="GotJobButton.png" /></td>
</tr>
<tr cellpadding="0" cellspacing="0">
<td ><img src="GotJobButton.png" /></td>
<td ><img src="GotJobButton.png" /></td>
<td ><img src="GotJobButton.png" /></td>
</tr>
</table>
</div>
</body>
</html> 参考技术A 建议CSS中将所有对象的内外距属性值设为0,
* margin:0; padding:0;
你加上这一段试试看效果。
看了你的代码,表格中插入的是图片,会不会图片宽度大于表格宽度造成段行呢?本回答被提问者采纳 参考技术B 如何清除图片下方出现几像素的空白间隙?
方法1:
img border:0;display:block;
方法2:img border:0;vertical-align:top; 参考技术C 布局不规范,你加上border=1先看看效果。
可能是td的宽度和高度没有自动适应。 参考技术D 在css文件里,试试:
table td margin:0; padding:0;
img margin:0; padding:0; border:0;
在表格单元格边框间距 CSS 中可以看到隐藏的行/列
【中文标题】在表格单元格边框间距 CSS 中可以看到隐藏的行/列【英文标题】:Hidden row/columns can be seen in table cell border-spacing CSS 【发布时间】:2022-01-13 00:05:45 【问题描述】:我有一个固定 x 顶行数和 y 左列数的表格。
点赞:https://jsfiddle.net/26m75fge/11/
CSS:
div
max-width: 40em;
max-height: 20em;
overflow: scroll;
position: relative;
table
position: relative;
border-collapse: collapse;
td,
th
padding: 0.25em;
border: 0.25em solid white;
thead tr:nth-child(1)
position: -webkit-sticky; /* for Safari */
position: sticky;
top: 0.25em;
background: #000;
color: #FFF;
z-index: 2;
thead tr:nth-child(2)
position: -webkit-sticky; /* for Safari */
position: sticky;
top: 2em;
background: #000;
color: #FFF;
z-index: 2;
thead th:first-child
left: 0;
z-index: 1;
tbody th
position: -webkit-sticky; /* for Safari */
position: sticky;
left: 0;
background: #FFF;
border-right: 1px solid #CCC;
HTML:
<table>
<thead>
<tr>
<th></th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
....
</tr>
<tr>
<th></th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
<th>head</th>
....
</tr>
</thead>
<tbody>
<tr>
<th>head</th>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
<td>body</td>
.....
</tr>
</tbody>
</table>
</div>
但是,当我滚动其他单元格时,我可以在表格的背景/边框间距中看到“隐藏”行。 (参见:边框间距中的单元格)
有没有办法使用 CSS/JS 隐藏这些边框,以便这些单元格在滚动后不会显示?
cells in border spacing
【问题讨论】:
【参考方案1】:设置边框样式:隐藏;用于表、tad、tbody、tr 然后将您的 th、td 填充和边框更改为所需的总长度,最后更改为 top: 0;对于粘性元素。见下文。
div
max-width: 40em;
max-height: 20em;
overflow: scroll;
position: relative;
table
position: relative;
border-collapse: collapse;
table, thead, tbody, tr
border-style: hidden;
td,
th
padding: 0.4em;
border: 0.4em solid white;
thead
position: -webkit-sticky; /* for Safari */
position: sticky;
top: 0;
background: #000;
color: #FFF;
z-index: 2;
thead th:first-child
left: 0;
z-index: 1;
tbody th
position: -webkit-sticky; /* for Safari */
position: sticky;
left: 0;
background: #FFF;
border-right: 1px solid #CCC;
【讨论】:
【参考方案2】:您可以将其添加到您的 css 中:
th
position: sticky;
height: 50px;
width: 100%;
background: white;
根据需要调整这些值。此外,请参考以下其他来源: How to stick table header(thead) on top while scrolling down the table rows with fixed header(navbar) in bootstrap 3?
https://css-tricks.com/position-sticky-and-table-headers/
【讨论】:
以上是关于HTML中做的表格为什么填充 间距 边框 三个都设置为0了,表格内部行与列之间还是有空隙。的主要内容,如果未能解决你的问题,请参考以下文章