gwtbootstrap всегда применяется ко всем элементам
Я хочу использовать загрузчик GWT для своего приложения, поэтому я добавил jar в classpath и унаследовал его в app.gwt.xml, и он работает до сих пор (я новичок в Bootstrap).
До сих пор я не использовал UIBinders для макета и, если возможно, хотел бы оставить его таким, поскольку у меня очень динамичный пользовательский интерфейс, который генерируется программно, и у меня мало опыта работы с UIBinders. Однако для элементов, которые я хочу использовать из gwtbootstrap, я создал UIBinders (например, заголовки и кнопки).
Проблема в том, что не только элементы, которые я создаю с помощью UIBinders с использованием элементов gwtbootstrap, выглядят как элементы gwtbootstrap, но и все элементы на странице.
Простой пример: нет никакой разницы, если я создам заголовок, как этот, используя элемент начальной загрузки
<b:Heading size="2">Hello GWT Bootstrap</b:Heading>
или как это с использованием стандартного HTML
<h1>Hello GWT Bootstrap</h1>
оба выглядят как заголовок GWT Bootstrap. То же самое относится ко всем остальным элементам, поэтому любой элемент на странице стилизован с помощью gwtbootstrap, даже если я этого не хочу и не могу найти способ это контролировать.
1 ответ
Это потому, что gwt-bootstrap внедряет bootstrap.css в ваше приложение GWT, а bootstrap.css определяет стили по умолчанию для стандартных элементов HTML, таких как <h1>
, так далее.
Если вы не хотите, чтобы начальная загрузка переопределяла стили по умолчанию, есть несколько решений:
- Измените файл bootstrap.css в файле библиотеки gwt-bootstrap и удалите ненужные стили
- Создайте отдельный файл CSS, который устанавливает стили для определенных элементов HTML (используя! Важное)
- Расширяет gwt-bootstraps CssResources и передает пользовательский файл css.
Решение 3, вероятно, самое чистое.