2015-09-08 5 views
1

Я использую тему начальной загрузки третьей части, которая определяет красивый внешний интерфейс для форм через класс «умная форма». Мне нужно включить DataTable в форму и что DataTable выглядит испорченным. Мой HTML выглядит вроде как, что:Как очистить эти стили

<form class="smart-form"> 
    .... form controls .... 
    <div class="data-table">....</div> 
    .... form controls .... 
</form> 

Я отслеживал проблему вниз эти стили от smart-form применяется к datatable:

.smart-form *, .smart-form :after, .smart-form :before { 
    margin: 0; 
    padding: 0; 
    box-sizing: content-box; 
    -moz-box-sizing: content-box; 
} 

Если в Chrome я отмените эти стили, моя таблица данных выглядит нормально ,

Могу ли я применить некоторые стили к таблице данных DIV, чтобы эти стили не распространялись на интеллектуальную форму в таблицу данных?

Спасибо.

+0

Можете ли вы отредактировать таблицу стилей темы? Или вставьте собственную таблицу стилей, которая переопределяет тему? Или добавить атрибут стиля в div? –

+0

Я могу вставить собственную таблицу стилей и переопределить стили. – user1044169

ответ

1

Проблема в .smart-form *. * означает все элементы внутри .smart-form. Вы должны обойти что-то вроде этого:

.smart-form > *:not(.datatable *) 

Это означает: всех детей в .smart-form, которые не совпадают со всеми элементами внутри .datatable

+0

Это работает - мне пришлось добавить не (.datatable *) со звездочкой. Единственная проблема заключается в том, что мне пришлось изменить эту таблицу сторонних разработчиков, поэтому в случае обновления от поставщика изменение будет потеряно. Мне жаль, что не было способа переопределить это в моей собственной таблице стилей, но я не мог найти способ сделать это. – user1044169

+0

@ user1044169, см. [Ответ от @dfsq] (http://stackoverflow.com/a/32461417/3549014), таким образом вам не нужно редактировать стороннюю таблицу стилей. –

0

Вы можете попытаться отменить примененные стили с inherit правилом:

.smart-form .data-table, 
.smart-form .data-table *, 
.smart-form .data-table :after, 
.smart-form .data-table :before { 
    margin: inherit; 
    padding: inherit; 
    box-sizing: inherit; 
    -moz-box-sizing: inherit; 
} 
+0

это не работает по каким-либо причинам – user1044169

+0

Убедитесь, что вы включили эти правила после третьей таблицы стилей. – dfsq

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