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>, так далее.

Если вы не хотите, чтобы начальная загрузка переопределяла стили по умолчанию, есть несколько решений:

  1. Измените файл bootstrap.css в файле библиотеки gwt-bootstrap и удалите ненужные стили
  2. Создайте отдельный файл CSS, который устанавливает стили для определенных элементов HTML (используя! Важное)
  3. Расширяет gwt-bootstraps CssResources и передает пользовательский файл css.

Решение 3, вероятно, самое чистое.

Другие вопросы по тегам