2015-03-12 3 views
3

У меня есть HTML-таблицы, где применяется следующий CSS:класс CSS перезаписывает другие

.tbst th, 
td { 
    padding: 12px 3px !important; 
    text-align: center !important; 
    vertical-align: middle !important; 
    border: 1px solid #ccc !important; 
    font-size: 12px; 
    overflow: hidden !important; 
    line-height: 24px !important; 
} 

и

.cmstb th, 
td { 
    padding: 12px 3px !important; 
    text-align: center !important; 
    vertical-align: middle !important; 
    border: 1px solid #ccc !important; 
    font-size: 14px; 
    overflow: hidden !important; 
    line-height: 24px !important; 
} 

Одна таблица использует .tbst класс, другой .cmstb. Но по какой-то причине второй CSS применяется к обеим таблицам, поэтому второй CSS перезаписывает стиль в первом CSS. Что я здесь делаю неправильно?

+0

Ответы на ваш вопрос отменены тем же ответом этих ребят. – rJ7

ответ

3

Вы устраиваете th правильно, но для td, стиль написан на языке, потому что он не является специфическим для любой таблицы. сделать его конкретным для этих таблиц

.tbst th, 
.tbst td { 
    padding: 12px 3px !important; 
    text-align: center !important; 
    vertical-align: middle !important; 
    border: 1px solid #ccc !important; 
    font-size: 12px; 
    overflow: hidden !important; 
    line-height: 24px !important; 
} 
and 

.cmstb th, 
.cmstb td { 
    padding: 12px 3px !important; 
    text-align: center !important; 
    vertical-align: middle !important; 
    border: 1px solid #ccc !important; 
    font-size: 14px; 
    overflow: hidden !important; 
    line-height: 24px !important; 
} 
+0

Быстро, просто, спасибо :). – DNac

0

класс td переоценивается. Кроме того, они используют одинаковые значения, кроме размера шрифта. вы должны конденсировать его, используя меньше. и тогда вы применили бы только разницу ко второй таблице.

.tbst th, .tbst td { 
padding: 12px 3px !important; 
text-align: center !important; 
vertical-align: middle !important; 
border: 1px solid #ccc !important; 
font-size: 12px; 
overflow: hidden !important; 
line-height: 24px !important; } 

и

.cmstb th, .cmstb td { 
font-size: 14px; } 
0

Вы ориентируетесь тд дважды, последние определенные свойства всегда отменяют те определенные ранее.

Даже лучше (и более производительный) CSS будет следующим:

.cmstb-th, 
.cmstb-td, 
.tbst-th, 
.tbst-td { 
    padding: 12px 3px !important; 
    text-align: center !important; 
    vertical-align: middle !important; 
    border: 1px solid #ccc !important; 
} 

.tbst-th, 
.tbst-td { 
    font-size: 12px; 
} 

.cmstb-th, 
.cmstb-td { 
    font-size: 14px; 
} 

Почему злоупотребление важно кстати!? В основном это означает, что у вас есть (другая) проблема наследования.

+0

Спасибо за ответ. Вопрос - перезапись стиля таблицы по умолчанию, используемого в шаблоне. – DNac