2012-10-03 23 views
8

CSS3のbox-shadowを使用している間は、通常は問題がありません。ボックスシャドウが途切れている

通常、ボックスの影はdivエッジ上にしか出現しませんが、このエッジ上には出ません。上部と右側に切り取られている

box-shadow ..

相続人は、私はボックスシャドウのために使用していCSS:

-moz-box-shadow: 0 0 5px #555; 
-webkit-box-shadow: 0 0 5px #555; 
box-shadow: 0 0 5px #555; 

乾杯

答えて

10

box-shadowた場合はoverflow:visibleがあなたの要素を内に含まれる任意のdiv要素(複数可)に設定されていることを確認し、カットオフされる。

+0

元の投稿でサンプルサイトのリンクを抜いたので、今後この問題を抱える人にこの説明を残しています。 –

17

問題がありますあなたのセンターメインディビジョンはシャドーの端から切り取っています。これにoverflow:visibleを設定すると、それが表示されます。

+0

ありがとう、私はこれが問題だと思ったが、私はこれを見なかった。あなたが素晴らしいです。 –

+0

喜んでお答えください。 – quoo

0

あなたは正しく

.img{ 
    margin:20px; 
-moz-box-shadow: 0 0 5px #555; 
    -webkit-box-shadow: 0 0 5px #555; 
    box-shadow: 0 0 5px #555; 
} 
をショーシャドウボックスのこのスタイルのimgタグを設定することができます
+0

これはもちろん、画像の位置も変更します。 – quoo

2

IEで複数回この問題が発生しました。私が見つけた最良の解決策は、divの周りに透明なアウトラインを使用することです。これは、GeckoとWebkitがそうでない場合でもIEがボックスシャドウをクリッピングするのを防ぐようです。この問題を解決するためにアウトラインを使用することの大きな点の1つは、divの位置に影響しないことです。絶対と下: -30px親のdivに一定の所定の位置にそれを置くため

は例えば、私は位置を使用していたこれでdiv要素を持っていました。 IEと唯一のIEは、ボックスの影の上部と下部を切り取っていました。このアウトラインを追加すると、位置を変更することなく固定されました。

outline: 10px solid transparent; 
関連する問題