2017-02-03 10 views
0

Я хочу создать таблицу с частично разделенными границами. Границы выше и ниже thead должны быть без пробелов между ними. Но другие в ней должны быть отделены небольшим пространством.Как стиль таблицы с только отграниченным интервалом?

К сожалению, border-spacing стиль применяется только ко всей таблице: https://developer.mozilla.org/en-US/docs/Web/CSS/border-spacing

Например, в следующем я хочу иметь место только между border-top из h2.1 и h2.2. Это возможно?

HTML:

<table> 
    <thead> 
    <tr> 
     <th rowspan="2">h1</th> 
     <th colspan="2">h2</th> 
    </tr> 
    <tr> 
     <th>h2.1</th> 
     <th>h2.2</th> 
    </tr> 
    </thead> 
    <tbody> 
    <tr> 
     <td>b1</td> 
     <td>b2.1</td> 
     <td>b2.2</td> 
    </tr> 
    <tr> 
     <td>b1</td> 
     <td>b2.1</td> 
     <td>b2.2</td> 
    </tr> 
    </tbody> 
</table> 

CSS:

table { 
    border-collapse: separate; 
} 

th, 
td { 
    vertical-align: top; 
} 

thead tr:first-child th { 
    border-top: 2px solid; 
} 

thead tr:not(:first-child) th { 
    border-top: 1px solid; 
} 

tbody tr:first-child td { 
    border-top: 1px solid; 
} 

tbody tr { 
    border-top: 1px solid; 
} 

Fiddle: https://jsfiddle.net/6ov4hadd/

Редактировать

Вот более разумный пример.

Fiddle: https://jsfiddle.net/Lnk929q4/

Я хочу, чтобы посмотреть его как «книга стол»:

enter image description here

ответ

0

Вы можете попробовать использовать две различные таблицы для головной части и части тела. Что-то вроде этого

https://jsfiddle.net/6ov4hadd/1/

 <table id = "table1"> 
      <thead> 
      <tr> 
       <th rowspan="2">h1</th> 
       <th colspan="2">h2</th> 
      </tr> 
      <tr> 
       <th>h2.1</th> 
       <th>h2.2</th> 
      </tr> 
      </thead> 
      </table> 
      <table> 
      <tbody> 
      <tr> 
       <td>b1</td> 
       <td>b2.1</td> 
       <td>b2.2</td> 
      </tr> 
      <tr> 
       <td>b1</td> 
       <td>b2.1</td> 
       <td>b2.2</td> 
      </tr> 
      </tbody> 
     </table> 
+0

Спасибо. Но мне нужны внутренние границы ада с расстоянием и внешними границами. Ваше решение имеет границу ниже головы с интервалом, но без внутренних. – Daniel

+0

Извините @ Daniel im не смог получить ваш ожидаемый результат. Можете ли вы дать грубую картину. Это будет полезно. – Sharmila

+0

Я добавил более разумный пример с изображением. – Daniel

 Смежные вопросы

  • Нет связанных вопросов^_^