前回、-moz-linear-gradientの紹介をしたのですが、そもそも BOX内の境界辺りのグラデーションならば box-shadowを inset付きで使ったほうがいいということに -moz-box-shadow "inset" CSS testを見て気付き、さっそく実装してみました。
-moz-box-shadow:
0px 3px 10px rgba(0,0,0,0.1),
inset 0 20px 30px -15px rgba(0,0,0,0.15),
inset 0 -40px 50px -35px rgba(255,255,255,0.6);
-webkit-box-shadow:
0px 3px 10px rgba(0,0,0,0.1),
inset 0 20px 30px -15px rgba(0,0,0,0.15),
inset 0 -40px 50px -35px rgba(255,255,255,0.6);
mozilla系と webkit系で分けていますが中身は一緒です。最初のは普通に BOX外に影をつけ浮き上がらせるもので、これは以前から行っていました。次の 2行で BOX内上下に黒い影をつけ、ほんの少し立体的な印象を与えています。各値の意味は -moz-box-shadow – MDCが詳しいです。また色を rgba値で扱うと、将来 backgroundの色を変更したくなっても、この部分は触らなくていいので便利です。
Firefox 3.5(Win, Mac, Linux)ならびに Chromium 4.0.205(Mac)、Google Chrome 4.0.203(Win)、Webkit 47905(Mac)でちゃんと表示されることを確認しました。IE 8や Opera 10、Safari 4などはまだ対応していないようです。
CSS3勧告はまだ先の話なので、こうした先行実装を行うのは時期早々という事は承知しています。が、将来の技術を体感できるのは単純に楽しいので。。。私のサイトを見るには Firefoxが最適ですよってことで。(~ ~;)
