You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让DIV元素呈现广播/电视台节目表样式?附JSFiddle示例代码

如何让DIV元素呈现广播/电视台节目表(EPG)样式

我来帮你搞定这个节目表样式的问题!你用display: table系列属性来构建布局的思路完全没问题——节目表本身就是规整的行列结构,表格布局天生适配这种需求。我帮你调整现有代码,实现标准的节目表样式:

1. 修正基础布局样式

你的现有代码里border设置不完整(缺少border-style),导致边框不显示,而且单元格没有内边距和分隔,看起来很拥挤。先调整核心CSS:

/* 根容器作为表格整体 */
.epg-root {
  position: relative;
  display: table;
  border-collapse: collapse; /* 合并边框,避免重复出现双线条 */
  border: 4px solid black; /* 完整的边框设置:宽度+样式+颜色 */
  width: 100%; /* 让节目表占满容器宽度 */
}

/* 每行节目 */
div.info {
  display: table-row;
}

/* 每个节目单元格 */
div.info1 {
  display: table-cell;
  background-color: ivory;
  border: 1px solid #999; /* 单元格之间的分隔线 */
  padding: 10px 8px; /* 内边距,让内容不拥挤 */
  vertical-align: middle; /* 让单元格内容垂直居中 */
}

2. 显示节目内容

你原来把图片和p标签都设为display:none,节目表需要展示时间、节目名、封面或主持人信息,所以调整这部分:

/* 节目缩略图 */
div.info1 img {
  height: 40px;
  display: inline-block; /* 显示图片,和文字同行排列 */
  margin-right: 8px; /* 和文字保持间距,更美观 */
}

/* 节目文字信息 */
div.info1 p {
  display: inline-block;
  margin: 0; /* 去掉p标签默认的上下边距 */
  vertical-align: middle;
}

3. 完整示例HTML结构

配合上面的CSS,你的HTML可以调整成这样(补充表头和多组节目,让结构更清晰):

<TITLE>Hallam FM - Best Variety of Hits</TITLE>
<div class="epg-root">
  <!-- 表头行:显示栏目分类 -->
  <div class="info">
    <div class="info1"><strong>时间段</strong></div>
    <div class="info1"><strong>节目名称</strong></div>
    <div class="info1"><strong>主持人/简介</strong></div>
  </div>
  <!-- 第一档节目 -->
  <div class="info">
    <div class="info1">06:00-10:00</div>
    <div class="info1">
      <img src="morning-show-cover.jpg" alt="早安节目封面">
      <p>早安Hallam</p>
    </div>
    <div class="info1">由Mike主持,带你开启活力满满的早晨</div>
  </div>
  <!-- 第二档节目 -->
  <div class="info">
    <div class="info1">10:00-14:00</div>
    <div class="info1">
      <img src="afternoon-hits-cover.jpg" alt="金曲节目封面">
      <p>金曲下午茶</p>
    </div>
    <div class="info1">经典老歌不间断,陪伴你的午后时光</div>
  </div>
</div>

额外优化建议

  • 如果需要高亮当前正在播出的节目,可以给对应的.info行加一个类,比如.current-show,设置background-color: #f5f5f5或者加粗边框,让它更显眼。
  • 响应式适配:在小屏幕上,可以通过媒体查询把表格布局改成块级布局,避免内容挤在一起:
@media (max-width: 768px) {
  .epg-root {
    display: block;
  }
  div.info {
    display: block;
    border-bottom: 2px solid black;
    padding: 10px 0;
  }
  div.info1 {
    display: block;
    border: none;
    padding: 4px 0;
  }
}

这样调整后,你的DIV就能呈现出清晰规整的广播/电视台节目表样式啦!

内容的提问来源于stack exchange,提问作者avenas8808

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:21:33