Как мне остановить лицевые панели, добавляя границы к панелям и календарям?

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

Я мог бы использовать собственный CSS, но я бы предпочел работать с каркасом, чтобы полностью удалить связанные с рамкой свойства из таблиц стилей, созданных richfaces, а не работать с каркасом и переопределять все, используя уродливый CSS.

Итак, как мне остановить лицевые панели, добавляя границы к панелям и календарям?


У этого парня похожая проблема

3 ответа

Решение

Начиная с версии 3.3.0.GA, невозможно попросить richfaces прекратить рендеринг CSS для границ и фона. Необходимо переопределить каждое из свойств встроенных таблиц стилей (которые содержатся в org.richfaces.renderkit.html.css, который является частью richfaces-ui-3.3.0.GA.jar).

Plug and skin дает вам необходимые возможности для этого, как если бы пользовательский CSS добавлялся с использованием обычных техник, хотя plug and skin возможно лучше, так как вы можете ссылаться на определения абстрактного цвета, чтобы компенсировать отсутствующие фоны, например так:

<u:style name="color" skin="abstractColorName" />

Следующие свойства CSS полезны для быстрой нейтрализации свойств границ и фона.

border: none;
background: transparent;

Чтобы начать работу с плагином и оболочкой, вы можете использовать следующую последовательность команд Maven2:

mvn archetype:generate -DarchetypeGroupId=org.richfaces.cdk -DarchetypeArtifactId=maven-archetype-plug-n-skin -DarchetypeVersion=3.3.0.GA -DartifactId=fil-skins -Dpackage=com.feelitlive.richfaces -DgroupId=com.feelitlive.server -Dversion=0.0.1-SNAPSHOT -DarchetypeRepository=http://repository.jboss.com/maven2/
cd fil-skins
mvn cdk:add-skin -Dname=fil -Dpackage=com.feelitlive.richfaces.skins

Лучше всего это делать из командной строки, поскольку, к сожалению, плагины Eclipse не могут найти архетипы в репозитории jboss (другие IDE могут справиться с этим лучше). Вам нужно изменить свойства artifactId, groupId, пакета, версии и имени в соответствии с вашим проектом. Выберите артефакт и имя пакета, которые отражают область действия артефакта для хранения нескольких определений обложек.


Было бы возможно - хотя и много работы - добавить поддержку свойств скина в общем формате xxxBackgroundEnabled и xxxBorderEnabled, чтобы отключить рендеринг этих границ и фонового CSS в каждом конкретном случае.

Вам нужно будет поработать с командой richfaces для исправления файлов xcss в org.richfaces.renderkit.html.css. Вам также понадобится некоторая функциональность условного вывода в одной из библиотек тегов XCSS JSF (определяется в http:/jsf.exadel.com/template/util или http: /jsf.exadel.com/template в файлах XCSS). который я хотел бы использовать, чтобы обернуть группы свойств CSS в файлы XCSS.

Если вы сделали такую ​​модификацию RichFaces тогда вы сможете отключить рендеринг спорного CSS из файла свойств любой кожи.

Есть кожа под названием plain к нему почти нет стилей.

Вот выдержка из документации:

Скин 'plain' был добавлен в версии 3.0.2. У него нет никаких параметров. Это необходимо для встраивания компонентов RichFaces в существующий проект, который имеет свои собственные стили.

Вы можете активировать его, добавив

<context-param>
    <param-name>org.richfaces.SKIN</param-name>
    <param-value>plain</param-value>
</context-param>

к web.xml,


Вы также можете помешать RichFaces загружать любые стили с помощью

<context-param>
     <param-name>org.richfaces.LoadStyleStrategy</param-name>
     <param-value>None</param-value>
</context-param>

установить в web.xml,

Но будьте осторожны, так как он не будет работать в JBoss Portlet Bridge 1.0.0.

RichFaces имеет встроенную систему скинов под названием Skinnablity. Skinnability - это высокоуровневое расширение стандартного CSS. Вы можете создать свой собственный файл скина для использования в вашем приложении ( документация jboss).

В jar richfaces-impl папка /META-INF/skins содержит все файлы скинов (.skin.properties). Скопируйте один и переименуйте его, измените то, что вы хотите. Вам придется восстановить банку.

ИЛИ ЖЕ

Вы можете использовать функцию plug-n-skin для richfaces, которую я никогда раньше не пробовал, но похоже, что она также подойдет для того, что вы пытаетесь сделать.

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