Как отобразить границы внизу, только если ячейки таблицы не пусты (CSS) - PullRequest
0 голосов
/ 14 марта 2010

У меня есть расчет Filemaker, который генерирует HTML-страницу с несколькими таблицами.

Если в результате вычисления будут получены значения для определенных полей, результат будет

<table>
<tr><td>Example value 1</td></tr>
<tr><td>Example value 2</td></tr>
...
</table>

Если вычисление не находит значений для отображения, результат будет просто

<table>
</table>

В первом случае я хочу, чтобы в таблице отображалась граница внизу (или любая другая горизонтальная линия); во втором случае я не хочу отображать границу внизу.

Я не могу найти способ сделать это, используя CSS ...

Спасибо в аванс: -)

Ответы [ 2 ]

2 голосов
/ 14 марта 2010

С этим вы можете приблизиться как можно ближе, если вы не можете изменить разметку:

table tr:last td { border-bottom: solid 1px blue; }

Если вы генерируете несколько таблиц, вам нужно это ( хотя и менее поддерживается ):

table tr:last-child td { border-bottom: solid 1px blue; }

Хотя на IE6 нет никаких гарантий.

Однако я настоятельно советую вам не создавать пустую таблицу, если вы можете ее избежать, это недействительный HTML. Если вы сделали это, ваш CSS также станет проще, просто приведя в таблице следующее:

table { border-bottom: solid 1px blue; }
0 голосов
/ 14 марта 2010

Легко использовать javascript, но если это должен быть только CSS, как насчет использования тега для размещения границы?

<table>
    <tr><td>Example value 1</td></tr>
    <tr><td>Example value 2</td></tr>
    ...
    <tfoot></tfoot>
</table>

Пример здесь: http://www.w3schools.com/tags/tryit.asp?filename=tryhtml_tbody

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...