2015-05-20 3 views

ответ

1

Вот рабочий фрагмент кода.

  1. границы разнос удаляет интервал между ячейками
  2. Tr: первый из-типа цели только первая строка, чтобы применить цвет фона
  3. тд: только п-й ребенок (нечетные) цели первой колонке сделать все поля полужирный

table{ 
 
    border-spacing:0; 
 
} 
 

 
tr:first-of-type{ 
 
    background:lightgray; 
 
    } 
 

 
td:nth-child(odd){ 
 
    font-weight:bold; 
 
} 
 

 
th,td{ 
 
    padding:5px; 
 
}
<table> 
 
    <tr> 
 
    <td>Plan/Feature</td> 
 
    <td>Standard</td> 
 
    </tr> 
 
    <tr> 
 
    <td>Plan Type</td> 
 
    <td>Annual</td> 
 
    </tr> 
 
    <tr> 
 
    <td>Email Support</td> 
 
    <td>Yes</td> 
 
    </tr> 
 
</table>

0

Вы только что задали цвет фона для элементов, которые хотите, чтобы они отображались.

В этом нет ничего сложного.

table, tbody, tr, th, td { background: transparent; } 
thead { background: #aaa; } 
1

Попробуйте это:

CSS:

table { 
    border-collapse: collapse; 
} 

table th, table thead tr { 
    background: #ccc; 
    font-weight: bold; 
} 

table tr td:first-child { 
    font-weight: bold; 
} 

table tr td { 
    background-color: transparent; 
} 

Example HTML:

<table> 
    <thead> 
     <tr> 
      <th>Header 1</th> 
      <th>Header 2</th> 
     </tr> 
    </thead> 
    <tbody> 
     <tr> 
      <td>Column 1</td> 
      <td>Column 2</td> 
     </tr> 
     <tr> 
      <td>Column 1</td> 
      <td>Column 2</td> 
     </tr> 
    </tbody> 
</table> 

JSFiddle

0

применяются только серый цвет в м A ttribute! Также используйте таблицу {border-collapse: collapse;}, чтобы удалить пробелы между строками.

th{ 
 
    background-color:grey 
 
} 
 
table{ border-collapse:collapse;}
<table> 
 
    <tr> 
 
    <th>Header</th> 
 
    <th>Header2</th> 
 
    </tr> 
 
    <tr> 
 
    <td>Body1</th> 
 
    <td>Body2</th> 
 
    </tr> 
 
</table>

+0

Eh. Эти «Тип плана», «Поддержка электронной почты» и т. Д. Жирным шрифтом уже могут быть элементами 'th', поэтому это не сработает. –

+0

Ну, как правило, вы сделаете первую строчку th элементов, не так ли? И если это так, он должен использовать класс. – davedadizzel

+1

Нет, если они заголовки, нет. Спецификация HTML указывает, что 'th' элементы могут использоваться" в качестве дочернего элемента 'tr'. В нем не указано, что они должны встречаться только в первом 'tr' или что они не должны помещаться в« tbody », например. –

1

Вы можете стиль заголовка таблицы с CSS

<table> 
    <tr> 
     <th>header</th> 
     <th>header</th> 
    </tr> 
    <tr> 
     <td>content</td> 
     <td>content</td> 
    </tr> 
</table> 

th { background-color: #ff0000; } 

Или увидеть эту скрипку: http://jsfiddle.net/h4817knp/6/

Edit: Для того, чтобы избежать пробелов в заголовке оных

table { border-collapse: collapse; } 

в CSS

http://jsfiddle.net/1yn99g13/1/

+0

У этого есть промежутки между ячейками заголовка, которых нет в вопросе. – Quentin

+0

Этот код синтаксически неверен –

+0

Что именно синтаксически неверно? – xeraphim

1

Вы должны, конечно, использовать CSS:

Вы должны избавиться от разноса по умолчанию в таблице:

table { 
    border-collapse: collapse; 
    border-spacing: 0; 
} 

Вам нужно для установки цвета фона элемента головки стола:

table thead { 
    background-color: lightgrey; 
} 

Вы должны определить ваши размеры ячеек:

td { 
    width: 100px; 
    height: 25px; 
} 

Working Fiddle

table { 
 
    border-collapse: collapse; 
 
\t border-spacing: 0; 
 
} 
 
td { 
 
    width: 100px; 
 
    height: 25px; 
 
} 
 
table thead { 
 
    background-color: lightgrey; 
 
}
<table> 
 
    <thead> 
 
     <tr> 
 
      <td>HeaderA</td> 
 
      <td>HeaderB</td> 
 
     </tr> 
 
    </thead> 
 
    <tbody> 
 
     <tr> 
 
      <td>Item 1</td> 
 
      <td>Value</td> 
 
     </tr> 
 
    </tbody> 
 
</table>

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