2016-05-20 2 views
2

У меня есть простая таблица в стиле бутстрапа с тремя столбцами и несколькими строками (динамически добавляется с данными с сервера).Удалить границу до последней ячейки

<table class="table table-bordered"> 
    <tr> 
     <th>Data</th> 
     <th>Value</th> 
     <th><!-- Should be 'Edit' but I'm hiding it--></th> 
    </tr> 
    <tr> 
     <td>data</td> 
     <td>value</td> 
     <td width="70px"><a href="/link/to/edit/value">Edit</a></td> 
    </tr> 
</table> 

Я хочу, чтобы удалить границу между столбцами Value и Edit сделать это выглядит как будто это один столбец.

Это то, что я пробовал:

<style> 
    th:last-child, td:last-child { 
     border-left: none !important; 
    } 
    th:nth-last-child(2), td:nth-last-child(2) { 
     border-right:none !important; 
    } 
</style> 

Это на самом деле работает, но я не хочу использовать параметр !important.

Есть ли способ сделать это без !important, или другого способа поместить информацию как в той же камере, как это: Value информации в середине клетки, и Edit информации о праве?


Редактировать
Спасибо Aaron за предоставленную мне without !important way, который:

<style> 
    body table.table.table-bordered tr th:last-child, 
    body table.table.table-bordered tr td:last-child { 
     border-left: none; 
    } 

    body table.table.table-bordered tr th:nth-last-child(2), 
    body table.table.table-bordered tr td:nth-last-child(2) { 
     border-right: none; 
    } 
</style> 

Даже если он хорошо работает, я уверен, что есть лучший способ сделать это, как inline путь. Есть идеи ?

ответ

2

Чтобы создать набор стилей, вы можете повысить значение тега с помощью классов и тегов.

так что ваш стиль будет так:

<style> 
    body table.table.table-bordered tr th:last-child, td:last-child { 
     border-left: none; 
    } 
    body table.table.table-bordered tr th:nth-last-child(2), 
    body table.table.table-bordered tr td:nth-last-child(2) { 
     border-right:none; 
    } 
</style> 
+0

Он также работает, но я ищу способ сделать это без использования тега '! Important' – tektiv

+0

@tektiv жаль, что я по ошибке оставил их, см. Обновленную версию – Aaron

+0

Brillant! Он работает хорошо, мне просто пришлось заменить 'td: last-child' из первого правила стиля на' body table.table.table-bordered tr td: last-child'. Спасибо ! – tektiv

0

Css = стиль каскадных листов, если вы загрузили

th:last-child, td:last-child { 
    border-left: none !important; 
} 

перед твиттер бутстрапе, он получает перезаписаны, если только его «важно! ' попробуйте загрузить свой стиль после загрузки bootstrap, и его не следует перезаписывать - не более! Важно!

Ваш единственный другой вариант был бы встроенным css?

+0

Это внутренний тег стиля, который загружается после загрузки. Так что это не может быть проблемой. Как я могу использовать inline css в этом случае? – tektiv

+1

inline css over-write the sheet или правила inline выглядит так:

Inline css не поддерживает множество селекторов и операций compex. Я рад, что вы нашли решение :) –

-1

поместить информацию в той же камере, вы можете использовать

<tr> 
    <th>Data</th> 
    <th>Value | Edit</th> 

</tr> 
<tr> 
    <td>data</td> 
    <td width="70px"> 
     <span style="float:left;width:50%;">this is the left</span> 
     <span style="float:right;width:50%:">this is right</span> 
    </td> 
</tr> 

вы можете использовать класс начальной загрузки .text-центра в первом элементе диапазона, чтобы выровнять текст в середине. Надеюсь, поможет.

+0

Поскольку диапазон не является элементом блока, добавление ширины не влияет. – Aaron

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