typedef typename Tail::inUnion dummy;
Однако я не уверен, что реализация inUnion верна. Если я правильно понимаю, этот класс не должен быть создан, поэтому вкладка «fail» никогда не будет автоматически терпеть неудачу. Возможно, было бы лучше указать, находится ли тип в объединении или нет с простым булевым значением.
template
struct Contains; template struct Contains > { enum { result = Contains ::result }; }; template struct Contains > { enum { result = true }; }; template struct Contains { enum { result = false }; }; PS: Посмотрите на Boost :: Variant
PS2: посмотрите на typelists , особенно в книге Андрея Александреску: Modern C ++ Design
Насколько я знаю, можно только отформатировать следующее использование CSS на <col>
элемент:
Этот страница имеет больше информации
, Herb прав - лучше разработать <td>
непосредственно. То, что я делаю, следующее:
<style type="text/css">
#mytable tr > td:first-child { color: red;} /* first column */
#mytable tr > td:first-child + td { color: green;} /* second column */
#mytable tr > td:first-child + td + td { color: blue;} /* third column */
</style>
</head>
<body>
<table id="mytable">
<tr>
<td>text 1</td>
<td>text 2</td>
<td>text 3</td>
</tr>
<tr>
<td>text 4</td>
<td>text 5</td>
<td>text 6</td>
</tr>
</table>
Это не будет работать в IE как бы то ни было.
Вы попытались применить стиль через класс CSS?
следующее, кажется, работает:
<style type="text/css">
.xx {
background: yellow;
color: red;
font-weight: bold;
padding: 0 30px;
text-align: right;
}
<table border="1">
<col width="150" />
<col width="50" class="xx" />
<col width="80" />
<thead>
<tr>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
</tr>
</tbody>
</table>
Ваш лучший выбор состоит в том, чтобы применить Ваше моделирование непосредственно к <td>
теги. Я никогда не использовал эти <col>
, тег, но большинство браузеров позволил Вам применить форматирование в <table>
и <td>
/ <th>
уровень, но не на промежуточном уровне. Например, если Вы будете иметь
<table>
<tr class="Highlight">
<td>One</td>
<td>Two</td>
</tr>
<tr>
<td>A</td>
<td>B</td>
</tr>
</table>
затем, то этот CSS не будет работать
tr.Highlight { background:yellow }
, но это будет
tr.Highlight td { background:yellow }
Также: Я предполагаю, что Ваш код выше только в демонстрационных целях, и Вы на самом деле не собираетесь применять встроенные стили.
col
тег должен быть в colgroup
тег, Это может быть чем-то, чтобы сделать с проблемой.
Чтение по этому поводу, так как я пытался стиль таблицу, такой, что первый столбец будет смелый текст, а остальные четыре столбца будут обычным текстом.
Использование COL TAG, казалось, как путь, но, хотя я смогу установить ширины колонн с атрибутом ширины Шрифта: жирный не будет работать
Спасибо за то, что указывали на меня в направлении решения.
Появив все элементы TD TD {Font-Weight: Bold;}
, а затем, используя селектор соседнего брата, чтобы выбрать столбцы 2-5 и стиль их обратно к нормальному TD + TD : нормально;}
Вуаля, все хорошо :)