トップ «前の日記(2009-07-06(月) ) 最新 次の日記(2009-07-14(火) )» 編集 RSS

いや、なんとなく…ね

適当なことを不定期に。なお、ここに有益な情報はありませんのであしからず。
現状と異なる可能性がありますので古い日付の内容には要注意
話題に関係のないツッコミもお気軽にどうぞ。
過去の日記

2009-07-12(日) [長年日記]

[編集]

[Firefox][Memo][Tips] -moz-appearanceというプロパティを覚えた

外観を変更するためにuserChrome.cssをいじくっても全然変化が現れない要素があって今までずっと疑問だったのですが、DOM InspectorおよびMozilla CSS 拡張仕様 - MDNとにらめっこしていて、-moz-appearanceというプロパティにたどり着きました。

-moz-appearance は、OS のテーマをベースにしたプラットフォーム用のスタイル付けを使用して要素を表示するために、Mozilla ブラウザによって使用されます。

例えばDefaultテーマのステータスバー。こんな感じ。

これを、reinみたいにフラットな雰囲気(こんな感じ)にしたいと思い上下のボーダを非表示にしようと、

statusbarpanel {
  /* ボーダを非表示 */
  border-bottom: none !important;
  border-top: none !important;
}

と記述しても効果が現れません。これがずっと疑問だったのでした。この要素には、

-moz-appearance: statusbar;

と指定してあって、現在のデスクトップのステータスバーと同じような外観が適用されます。しかも他のプロパティより優先順位が高いようです。そこで上記に、

statusbarpanel {
  -moz-appearance: none !important;
 
  /* ボーダを非表示 */
  border-bottom: none !important;
  border-top: none !important;
}

と記述することにより、無事に思惑通りの効果が現れます*1。こんな感じ。

はっきり言ってかなり手探り状態でいじくってますが(==よく理解はしていない)、一応自分の望む結果が出ているのでよしとしましょう(ぉ

それにしても、複雑怪奇な構造とうんざりするほど膨大な要素があって、テーマを作成される方々はほんとすごいですねぇ。

*1 -moz-appearanceに設定されている値によってはnoneにすることによってがらりと外観が変わるものがあるので、もっと多くのプロパティを設定しなければ思惑通りにならない場合もあります。


過去の日記
トップ «前の日記(2009-07-06(月) ) 最新 次の日記(2009-07-14(火) )» 編集 RSS