У меня есть класс «t_data», который предназначен для настройки внешнего вида для большинства моих таблиц.css: как наследовать весь класс
Хотя, в некоторых случаях мне нужно сделать дополнительные специализации таблиц: допустим, что таблицы для «клиентов» и «заказы» выглядят по-другому.
По умолчанию способ наследования стилей для описания CSS-определения для обоих классов в том же блоке, что-то вроде этого:
table.t_data, table.t_data_order, table.t_data_customer
{
background-color: #080;
}
Таким образом работает хорошо до некоторой степени ... пока я не слишком много различных определения.
Прямо сейчас у меня есть уже что-то вроде этого:
table.t_data thead tr th, table.t_data thead tr td, table.t_data tbody tr th, table.t_data tbody tr td, table.t_data tfoot tr th, table.t_data tfoot tr td,
table.t_group thead tr th, table.t_group thead tr td, table.t_group tbody tr th, table.t_group tbody tr td, table.t_group tfoot tr th, table.t_group tfoot tr td
{
border: #333 1px solid;
}
Для того, чтобы сделать персонализировать t_data выглядеть по-разному для t_data_customer и/или t_data_order мне нужно будет тройные этот блок ... и существует высокий риск пропустить некоторые элементы ... у меня также есть более 10 таких блоков для различных элементов (например, фон, шрифт и т.д.)
есть ли CSS или даже без CSS решения для подобных вещей?
спасибо!
P.S. Если у вас нет решения, но только идеи, не стесняйтесь делиться ими! Любые мысли приветствуются
Это невозможно в родном CSS, но есть прекомпиляторы CSS, которые предлагают наследование и многое другое, например. МЕНЬШЕ: http://lesscss.org/ –
Использование HTML-элементов с несколькими классами может помочь. – nwellnhof