Как мне остановить лицевые панели, добавляя границы к панелям и календарям?
Я надеюсь использовать пользовательский скин 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, которую я никогда раньше не пробовал, но похоже, что она также подойдет для того, что вы пытаетесь сделать.