すべてのブラウザーでサポートされるようにしたいので、CSS3 ではなく CSS でこれを実現したい
つまり、コンテンツを含む div で、四方に影があります。上部の領域はナビゲーションに使用されます。チュートリアルを検索しましたが、これまでのところ役に立ちません。ヘルプ!
Box Shadow はすべての最新の [IE>8] ブラウザーで動作します。このコードは画像を使用せず、IE バージョン 9 未満のすべてのブラウザーで動作します。
box-shadow:2px 2px 10px 10px #C9C9C9;
-webkit-box-shadow:2px 2px 10px 10px #C9C9C9;
-moz-box-shadow:2px 2px 10px 10px #C9C9C9;
/* For IE<9 */
filter:
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=0,strength=5),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=45,strength=2),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=90,strength=5),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=135,strength=5),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=180,strength=10),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=225,strength=5),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=270,strength=5),
progid:DXImageTransform.Microsoft.Shadow(color=#C9C9C9,direction=315,strength=2);
ボックス シャドウは IE 9 以降でサポートされています。
CSS3pieは、IE でいくつかの css3 プロパティを使用できるようにするツールです。
あなたがしようとしているのは、新しいブラウザーでかなり普及している css3 であり、そこからダウンロードできる .htc ファイルを使用して IE で非常にうまく (そして簡単に) エミュレートされます。
マークアップに関しては、2 つの要素しか表示されず、たとえば、一番上の要素が右に浮かんでいます。余分な影を隠すには、z-index をいじる必要があります。そのサイトにも非常によく似た効果があり、ニーズに合わせて調整できるはずです。
これはすべてのブラウザーで機能するはずです。
.allSidesShadow { ボックスの影: 2px 2px 19px #aaa; -o-box-shadow: 2px 2px 19px #aaa; -webkit-box-shadow: 2px 2px 19px #aaa; -moz-box-shadow: 2px 2px 19px #aaa; /* IE 5.5 ~ 7 の場合 */ /* IE4 ~ IE7 の場合 */ フィルター: progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=1、色=#C4C4C4)、 progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=90、色=#C4C4C4)、 progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=180、色=#C4C4C4)、 progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=270、色=#C4C4C4); -ms-フィルター: " progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=1、色=#C4C4C4)、 progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=90、色=#C4C4C4)、 progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=180、色=#C4C4C4)、 progid:DXImageTransform.Microsoft.Shadow(強度=9、方向=270、色=#C4C4C4) "; }
Ventusが言ったように、ie(ie9のみ)でcssシャドウを使用することはできません。ただし、shadowOnを使用できます。これは優れた jquery プラグインであり、非常に使いやすいです。これにより、ブラウザ間の互換性が確保されます。
I cant see your picture now, but for all side shadows I use the below code:
box-shadow: 0 0 5px 0 #000;
Instead of the 5px use your size.
box-shadow: inset 0 0 3px 0 #000;
左 0 ピクセル、右 0 ピクセル、ぼかし 3 ピクセル、拡散 0 ピクセルを意味し、BG よりもわずかに暗い色を使用します。
Sekar が投稿した回答には、少し編集が必要です。
box-shadow:2px 2px 10px 10px #C9C9C9;
-webkit-box-shadow:2px 2px 10px 10x #C9C9C9;
-moz-box-shadow:2px 2px 10px 10px #C9C9C9;
これはIEでは機能しません(IE8で確認しました)。
次のコードを div に配置して、4 つの側面すべてに影を落とすことができます。
-webkit-box-shadow: 0 0 10px rgba(0,0,0,.1);
box-shadow: 0 0 10px rgba(0,0,0,.1);
複数のイメージを作成する必要があります。左側用。右用の 1 つ。1つは下などです。次に、いくつかのdivを持ち、それぞれの背景を設定します。
すべて同じ (固定) 幅であると仮定すると、3 つの div でこれを行うことができます。
<div class='top'>
</div>
<div class='middle'>
<p>Hello World!</p>
</div>
<div class='bottom'>
</div>
.top{
background:url('top.png');
height:20px;
width:800px;
}
.middle{
background:url('middle.png') repeat-y;
width:800px;
}
.bottom{
background:url('bottom.png');
height:20px;
width:800px;
}
または、1 つの大きな画像を作成し、それをコンテンツ領域全体の背景として使用することもできます。次に、含まれる要素の位置とサイズをハードコーディングします。