jQuery UIタブを垂直タブとしてスタイル設定しようとしていますが、提供されている垂直タブデモとは少し異なるスタイルになっています。
私はこれを達成しようとしています:
しかし、私が得ることができる最高のものはこれです:
タブの下の境界線の色がテキストの色と一致していることに気付くでしょうが、私は本当に境界線がタブ全体で一貫していることを望んでいます。
私はこのようにcss行を追加することができます:
.ui-tabs-vertical > .ui-tabs-nav li {
border-bottom-color: #C5DBEC !important;
}
ただし、jQuery UIテーマローラーによって提供される色をハードコーディングしたくないので、テーマを変更したり、Webサイトのブランドごとに異なるテーマを使用したりすると、これは悪夢になります。維持。
問題をもう少し深く見てみると、標準のjQueryUIテーマcssがこれを行っているようです。
.ui-tabs .ui-tabs-nav li { border-bottom: 0 none; }
これは、すべてが通常、下の境界線を削除する必要がある水平タブ用に設定されているためです。生成されたテーマローラーcssの一部であるため、これを削除できません。省略形の境界線の最初の2つ(つまり、幅とスタイル)のみが指定されているため、これによってborder-colorプロパティが変更されることはないと思います。したがって、ここでは境界線の色が上書きされないことを期待しますが、実際には上書きされ、フォントの色に設定されています。
このcss行を元に戻すために私が行ったことは次のとおりです。
.ui-tabs-vertical .ui-tabs-nav li { border-bottom: 1px solid !important; }
ここでも、border-bottom-colorには触れていないことに注意してください。
この結果、少なくともFirefoxでは、これはfirebugから取得されたものです。
何らかの理由で、border-bottom-colorに何も触れていないのに、色がデフォルトのブラウザの色に戻されているように見えます。.ui-widget-content .ui-state-defaultの色を通過させたいだけですが、その方法がわかりません。
DOMの親要素から色を取得したくないため、inheritを使用しても機能しません。
これが私の問題を示すjsFiddleです。誰かが私が保守可能な解決策を得るのを手伝ってもらえますか?