リッチフェイスがパネルやカレンダーに境界線を追加するのを止めるにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/622891

質問

プレゼンテーションの大部分を処理するために、カスタムリッチフェイススキンを使用したいと考えています。残念ながら、リッチフェイスはカレンダーコンポーネントのすべてのセルと各パネルの周りに境界線を描画します。境界線のないオープングリッドで日番号のサイトが表示されるように、それらをオフにします。カレンダーコントロールのスキンまたは属性を使用して、これを実行する明白な方法はありません。

カスタムCSSを使用することもできますが、フレームワークを操作して、フレームワークに対して作業し、ugいCSSを使用してすべてをオーバーライドするのではなく、リッチフェイスによって作成されたスタイルシートから境界線関連のプロパティを完全に削除したいです

では、リッチフェイスがパネルやカレンダーに境界線を追加するのを止めるにはどうすればいいですか?


この男には同様の問題

役に立ちましたか?

解決

バージョン3.3.0.GAの時点では、境界線と背景のCSSのレンダリングを停止するようにリッチフェイスに依頼することはできません。組み込みのスタイルシート(richfaces-ui-3.3.0.GA.jarの一部であるorg.richfaces.renderkit.html.cssに含まれているもの)の各プロパティをオーバーライドする必要があります。

プラグアンドスキンは、通常の手法を使用して追加されたカスタムCSSと同様に、それを実行するために必要なパワーを提供しますが、抽象的なカラー定義を参照して不足している背景を補正できるため、プラグアンドスキンは間違いなく優れています:

<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、package、version、nameの各プロパティを変更する必要があります。複数のスキン定義を保持するためのアーティファクトの範囲を反映するアーティファクトとパッケージ名を選択します。


-多くの作業がありますが、一般的な形式xxxBackgroundEnabledおよびxxxBorderEnabledでスキンプロパティのサポートを追加して、ケースごとにこれらの境界線と背景CSSのレンダリングをオフにすることができます。

org.richfaces.renderkit.html.cssのxcssファイルにパッチを適用するには、richfacesチームと協力する必要があります。また、XCSS JSFタグライブラリ(XCSSファイル内のhttp:/jsf.exadel.com/template/utilまたはhttp:/jsf.exadel.com/templateで識別されます)のいずれかに何らかの条件付き出力機能が必要です。 XCSSファイルでCSSプロパティのグループをラップするために使用すると予想します。

richfacesにこのような変更を加えた場合、論争の的となっているCSSのレンダリングをスキンのプロパティファイルから無効にできます。

他のヒント

スタイルがまったく付加されていない 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というスキンシステムが組み込まれています。スキナビリティは、標準CSSの高度な拡張機能です。アプリケーションで使用する独自のスキンファイルを作成できます( jbossドキュメント)。

richfaces-impl jarのフォルダー/ META-INF / skinsには、すべてのスキンファイル(.skin.properties)が含まれています。コピーして名前を変更し、必要なものを変更します。 jarを再構築する必要があります。

または

リッチフェイスのプラグアンドスキン機能。これまで試したことはありませんが、やろうとしていることでも機能するようです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top