4.4.8. 標準コントロールスキニング (Standard Controls Skinning)
この機能は 標準的な HTML エレメントと RichFaces コンポーネントのルックアンドフィールを統一するためのものです。 エレメント名と属性タイプ (該当する場合)を基に、 ページ上のすべてのコントロールにスキニングを適用することができます。 特定のエレメントや、コントロールをネストするエレメントのコンテナに
rich-* クラスを割り当てて、 スキンが適用されるようにする CSS スタイルのセットも備えています。
標準コントロールスキニングには 基本 (Basic) と 拡張 (Extended) の2 つのレベルのスキニングがあります。検出されるブラウザのタイプにより使用されるレベルが決まります。ブラウザタイプが検出できない場合は、
Extended が使用されますが、適用されるレベルを明示的に指定したい場合は、org.richfaces.CONTROL_SKINNING_LEVEL コンテキストパラメータを web.xml に追加し、値を basic または extended のどちらかに設定します。
- 基本 レベルは 基本的なスタイルプロパティのみカスタマイズを提供します。 基本のスキニングは次のブラウザに適用されます。
- Internet Explorer 6
- BackCompat モードの Internet Explorer 7 (document.compatMode property in MSDN を参照)
- Opera
- Safari
- 拡張 レベルは基本のスキニングの他にも多くのスタイルプロパティを導入し、 リッチなビジュアルスタイリング制御機能と共にブラウザへ適用されます。 拡張スキニングをサポートするブラウザは次の通りです。
- Mozilla Firefox
- 標準準拠モード (CSS1Compat) の Internet Explorer 7
スキンで変更できるエレメントは次の通りです。
inputselecttextareakeygenisindexlegendfieldsethra(a:hoverおよびa:visited疑似エレメントと併用)
標準的な HTML コントロールのスキニングを初期化する方法は 2 つあります。
org.richfaces.CONTROL_SKINNING_CLASSESパラメータをweb.xmlに追加します。org.richfaces.CONTROL_SKINNING_CLASSESはenableとdisableをパラメータとして取ります。 有効にすると、 HTML コンポーネントへスキンを適用する事前定義された CSS クラスのセットが提供されます。
org.richfaces.CONTROL_SKINNING_CLASSES を有効にすると、 以下に適用できるスタイルクラスが提供されます。
- rich-container クラスでエレメント内にネストされる基本エレメント。 例は次の通りです。
... .rich-container select { //class content } ...... .rich-container select { //class content } ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 基本的なエレメント名またはタイプのうち 1 つと対応するクラス名を持つエレメントは以下の例のとおり
rich-<elementName>[-<elementType>]スキームでマップされます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記
rich-link、rich-link-hover、rich-link-visitedなど、linkタイプと疑似クラス名によってエレメントはクラスを割り当てられます。
提供される事前定義されたリッチ CSS クラスは、 基本および複合 HTML エレメントの両方のクラスとして使用できます。
次のコードスニペットには例として複数のエレメントを示しています。
標準的なコンポーネントスキニングに関する詳細を知りたい場合は、 RichFaces SVN レポジトリの
ui/core/src/main/resources/org/richfaces/ ディレクトリにある CSS ファイルを確認してみてください。
4.4.8.1. 標準レベル リンクのコピーリンクがクリップボードにコピーされました!
リンクのコピーリンクがクリップボードにコピーされました!
| CSS プロパティ | スキンパラメータ |
|---|---|
| font-size | generalSizeFont |
| font-family | generalFamilyFont |
| color | controlTextColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-color | panelBorderColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-color | panelBorderColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| color | generalLinkColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| color | hoverLinkColorgeneralLinkColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| color | visitedLinkColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| font-size | generalSizeFont |
| font-family | generalFamilyFont |
| color | controlTextColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-color | panelBorderColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-color | panelBorderColor |
| border-width | 1px |
| border-style | solid |
| CSS プロパティ | スキンパラメータ |
|---|---|
| color | generalLinkColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| color | hoverLinkColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| color | visitedLinkColor |
| CSS プロパティ | スキンパラメータ / 値 |
|---|---|
| border-width | 1px |
| border-style | inset |
| border-color | panelBorderColor |
| background-color | controlBackgroundColor |
| background-repeat | no-repeat |
| background-position | 1px 1px |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-width | 1px |
| border-style | inset |
| border-color | panelBorderColor |
| background-color | editBackgroundColor |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-width | 1px |
| border-style | inset |
| border-color | panelBorderColor |
| background-color | warningBackgroundColor |
| background-repeat | no-repeat |
| background-position | center left |
| padding-left | 7px |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-width | 1px |
| border-style | solid |
| border-color | panelBorderColor |
| background-color | trimColor |
| padding | 2px 10px 2px 10px |
| text-align | center |
| cursor | pointer |
| background-repeat | repeat-x |
| background-position | top left |
| CSS プロパティ | スキンパラメータ |
|---|---|
| background-position | bottom left |
| CSS プロパティ | スキンパラメータ |
|---|---|
| border-color | panelBorderColor |
| border-width | 1px |
| border-style | solid |
| padding | 10px |
| padding | 10px |
| CSS プロパティ | スキンパラメータ |
|---|---|
| font-size | generalSizeFont |
| font-family | generalFamilyFont |
| color | controlTextColor |
| font-weight | bold |
| CSS プロパティ | スキンパラメータ |
|---|---|
| padding | 0px |
| margin | 0px |