HTML 表格边框和间距显示,即使样式将它们设置为折叠

标签 html css

我使用 HTML 创建了一个表格,如下所示:

<table class="test">
                <tr>
                    <td colspan="2">    
                        <div class="test2">
                            <img src="1.jpg" width="100%">
                        </div>                  
                    </td>
                    <td width="33%">
                        <div class="test2">
                            <img src="1.jpg" width="204%">
                        </div>                  
                    </td>
                </tr>
                <tr>
                    <td width="50%">    
                        <div class="test2">
                            <img src="1.jpg" width="100%">
                        </div>              
                    </td>
                    <td colspan="2">
                        <div class="test2">
                            <img src="1.jpg" width="100%">
                        </div>                  
                    </td>
                </tr>
            </table>

然后我使用以下样式尝试删除间距和边框:

.test
    {
        margin: auto;
        width:1000px;
        height:583px;
        border-collapse: collapse;
        padding: 0; 
        position: relative;
    }

    .test2
    {                   
        width:100%;
        height:100%;
        position: relative;
        overflow: hidden;       
    }

问题是它似乎不起作用,因为我仍然在单元格之间留有间距,如下图所示:html table

最佳答案

  1. 默认情况下,浏览器会为表格添加边框。要删除它,您需要覆盖它:
table, table * {border: none;}
  1. 你不应该使用 <table>任何非表格数据的元素。您会发现使用该标记很难处理响应。

一种现代的布局解决方案是 flexbox:

body {
  margin: 0;
  background-color: #212121;
  padding: 30px;
}
.flex-images {
  display: flex;
}
.flex-images div {
  flex-grow: 1;
}
.flex-images img {
  width: 100%;
  min-height: 100%;
  object-fit: cover;
  display: block;
}
@media (max-width: 539px) {
  .flex-images {
    flex-wrap: wrap;
  }
}
<div class="flex-images">
  <div>
    <img src="https://unsplash.it/200/300" />
  </div>
  <div>
    <img src="https://unsplash.it/600/400" />
  </div>
</div>
<div class="flex-images">
  <div>
    <img src="https://unsplash.it/500/250" />
  </div>
  <div>
    <img src="https://unsplash.it/400/300" />
  </div>
</div>
<div class="flex-images">
  <div>
    <img src="https://unsplash.it/150/350" />
  </div>
  <div>
    <img src="https://unsplash.it/750/300" />
  </div>
</div>

如果您不想裁剪图片,请为同一行中的所有图片设置相同的高度。

关于HTML 表格边框和间距显示,即使样式将它们设置为折叠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44661256/

相关文章:

javascript - 如何减少替代样式表的加载时间?

php - 在PHP中更改所选选项的文本颜色

html - Bootstrap垂直对齐中间div

javascript - 我使用 php 创建了一个动态复选框,但是当我使用 .checked() 来检查它时,仅检查第一个单选按钮。剩下的怎么检查?

html - 更改 div 类中特定元素的 CSS 属性

html - 在 Bootstrap 中滚动期间未出现“事件”

html - 在 IE 和 Chrome 中创建纯 CSS 平滑视差

python - 使用 BeautifulSoup 导航

javascript - 更改 dateRangePicker 的日期格式

javascript - 我正在进行在线测试,一切都完成了。但我的自动提交计时器不起作用。