Jump to content
  • 0

Индивидуальное выравнивание для колонок таблици


CoDy
 Share

Question

Всем привет.

Есть оч. большая таблица, в которой нужно задать для некоторых колонок индивидуальные стили(например выравнивание).

Проставлять для каждой ячейки класс, к которому потом прикрутить стили, не очень хочется, поскольку это ощутимо увеличит размер страницы, на которой будет размещена данная таблица.

Пытался копать в сторону col и colgroup, - но спецификация говорит, что таким образом можно задать только высоту, границу, фон и visibility. Как вариант рассматриваю JS, но хотелось бы обойтись без нее.

Не подскажите есть ли какой-нибудь альтернативный способ стилизации ячеек колонки кроме как через присвоение класса каждой ячейке? Вот ссылка http://jsfiddle.net/GW8dy/ на пример таблицы, где нужно выровнять цену по правому краю.

Edited by CoDy
Link to comment
Share on other sites

10 answers to this question

Recommended Posts

  • 0

CoDy,

В случае некритичности кроссбраузерности можно использовать http://htmlbook.ru/css/last-child, http://htmlbook.ru/css/nth-child, http://htmlbook.ru/css/first-child

Еще, как вариант, для ячеек с выравниванием по правому краю можно использовать, например th, вместо td

Link to comment
Share on other sites

  • 0
в сторону col и colgroup, - но спецификация говорит, что таким образом можно задать только высоту, границу, фон и visibility.

К счастью, IE самовольно в обход спецификации позволяет задавать гораздо больше. Поэтому из комбинации first/last/nth-child и col можно слепить достаточно кроссбраузерную штуку.

Link to comment
Share on other sites

  • 0
в сторону col и colgroup, - но спецификация говорит, что таким образом можно задать только высоту, границу, фон и visibility.

К счастью, IE самовольно в обход спецификации позволяет задавать гораздо больше. Поэтому из комбинации first/last/nth-child и col можно слепить достаточно кроссбраузерную штуку.

А можно ссылочку на на материал, пример по данной теме или пару ключевых слов по которым можно порыться в поисковиках.

Link to comment
Share on other sites

  • 0
в сторону col и colgroup, - но спецификация говорит, что таким образом можно задать только высоту, границу, фон и visibility.

К счастью, IE самовольно в обход спецификации позволяет задавать гораздо больше. Поэтому из комбинации first/last/nth-child и col можно слепить достаточно кроссбраузерную штуку.

Дружище, а можешь перечислить те вещи, которые позволяет делать ИЕ с col :rolleyes:

Link to comment
Share on other sites

  • 0

Классы типа c1,c2,c3,c4 не так уж и много места займут в вашем html коде, это будет кроссбраузерное решение без всяких извращений

в сторону col и colgroup, - но спецификация говорит, что таким образом можно задать только высоту, границу, фон и visibility.

К счастью, IE самовольно в обход спецификации позволяет задавать гораздо больше. Поэтому из комбинации first/last/nth-child и col можно слепить достаточно кроссбраузерную штуку.

Готов поспорить что тест browsershots вы не пройдете.

Link to comment
Share on other sites

  • 0

Классы типа c1,c2,c3,c4 не так уж и много места займут в вашем html коде, это будет кроссбраузерное решение без всяких извращений

Если код генерируется php, то в принципе пофиг. Вручную же набивать каждой ячейке классы, особенно, если таблица большая - вот это извращение.

Upd. Придумался еще такой вариант - http://jsfiddle.net/fainz777/h7Bys/2/

Edited by sigma77
Link to comment
Share on other sites

  • 0

можешь перечислить те вещи, которые позволяет делать ИЕ с col :rolleyes:

Если верить msdn — практически всё, что можно делать с текстом/шрифтами. Насчет :hover, правда, не уверен (вроде когда-то пробовал — не вышло, на досуге опять поэкспериментирую)...

Кстати, интересно, что спека CSS разрешает для col задавать только фон, бордеры, ширину и видимость, но в спеке HTML4/XHTML1 для них вполне разрешен "гадкий презентационный" атрибут align — и он, что удивительно, даже не deprecated! :)

Link to comment
Share on other sites

  • 0

можешь перечислить те вещи, которые позволяет делать ИЕ с col :rolleyes:

Если верить msdn — практически всё, что можно делать с текстом/шрифтами. Насчет :hover, правда, не уверен (вроде когда-то пробовал — не вышло, на досуге опять поэкспериментирую)...

Кстати, интересно, что спека CSS разрешает для col задавать только фон, бордеры, ширину и видимость, но в спеке HTML4/XHTML1 для них вполне разрешен "гадкий презентационный" атрибут align — и он, что удивительно, даже не deprecated! :)

Ага, ясненько, спасибо. Будет время, сам покопаюсь ещё. Полезная штука.

Upd. Придумался еще такой вариант - http://jsfiddle.net/fainz777/h7Bys/2/

Здорово придумала подруга :)

Link to comment
Share on other sites

  • 0

Если верить msdn — практически всё, что можно делать с текстом/шрифтами. Насчет :hover, правда, не уверен (вроде когда-то пробовал — не вышло, на досуге опять поэкспериментирую)...

Это очень похоже на "рудимент":

в 5.5, 6, 7 такой прием работает при любом доктайпе;

а в 8+ версиях - исключительно при доктайпе <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy