1

ここでわかるように(フィドル)、aは親で、 に設定されていoverflow: hidden;ます。spanは子でbox-shadow設定しています。何も起こらない場合はすべてうまくいきますが、ユーザーが にカーソルを合わせるとa、そのoverflowプロパティが上書きされるように見えます (つまり、本来あるべき丸ではなく、四角で影が表示されます)。これを解決する方法はありますか?

コード: HTML

<a href="#" title="Hover me"><span>Hover me</span></a>

CSS

a {
    overflow: hidden;
    width: 52px;
    height: 52px;
    top: 0;
    display: block;
    position: relative;
    margin: 50px;
    background: red;

    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    transition: all 300ms linear;

    border-radius: 200px;
    opacity: 0.6;
}

a:hover {
    opacity: 1;
    top: -8px;
}

a > span {
    width: 100%;
    height: 100%;
    display: block;
    box-shadow: inset 0 -35px 10px rgba(0,0,0,0.8);
}

a:hover > span {
    box-shadow: inset 0 -28px 10px rgba(0,0,0,0.8);
}
4

1 に答える 1

0

あなたの質問は理解できませんが、それがあなたを助けることができるならこれを試してください....

a {
    overflow: hidden;
    width: 52px;
    height: 52px;
    top: 0;
    display: block;
    position: relative;
    margin: 50px;
    background: red;

    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -ms-transition: all 300ms linear;
    -o-transition: all 300ms linear;
    transition: all 300ms linear;

    border-radius: 200px;
    opacity: 0.6;
}

a:hover {
    overflow: hidden;
    opacity: 1;
}

a > span {
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block;
    box-shadow: inset 0 -35px 10px rgba(0,0,0,0.8);
}

a:hover > span {
    overflow: hidden;
    box-shadow: inset 0 -28px 10px rgba(0,0,0,0.8);
}
于 2013-02-07T12:09:22.267 に答える