0

<div>CSS3トランジションを使用して、この中の画像にカーソルを合わせたときに10ピクセル上に移動しようとしています<div>。Firefoxではうまく機能しますが、ChromeとSafariで表示すると、要素<h3><p>要素が少し上下に揺れます。

これは私のCSSです:

.feature-table #box {
    width: 325px;
    height: 372px;
    margin-right: 20px;
    float: left;
}

.feature-table a {
    display: block;
    width: 325px;
    height: 372px;
}

.feature-table a img {
    display: block;
    margin-left: auto;
    margin-right: auto;
    padding-top: 54px;
    padding-bottom: 40px;
    -moz-transition: all 0.3s linear;
    -webkit-transition: all 0.3s linear;
    transition: all 0.3s linear;
}

.feature-table a: hover img {
    padding-top: 44px;
    padding-bottom: 50px;
}

.feature-table a h3 {
    font-family: 'GothamBold', sans-serif;
    font-size: 30px;
    color: #3d3d3d;
    text-align: center;
    text-decoration: none;
    margin: 0;
    padding: 0 25px;
}

.feature-table a: hover h3 {
    color: #f6ce4f;
}

.feature-table a {
    text-decoration: none;
}

.feature-table p {
    font-family: 'GothamLight', sans-serif;
    font-size: 14.5px;
    color: #949494;
    text-align: center;
    padding: 10px 28px;
}

.feature-table .caret {
    border-top: 5px solid #fff;
    border-bottom: 5px solid #fff;
    border-left: 5px solid #ffc235;
    content: "";
    display: inline-block;
    height: 0;
    width: 0;
    margin-left: 10px;
}

これは私のHTMLの一部です:

<div id="box">
    <a href="#">
        <img src="images/payment_icon.png" width="114" height="115" border="0" />
        <h3>Customizable Campaign Pages</h3>
        <p>Tell your story with images, video, rich text and social updates<b class="caret"></b></p>
    </a>
</div>

何か案は?

4

1 に答える 1

0

現在のレイアウトに影響を与える 2 つの異なるプロパティをアニメーション化しているため、パフォーマンスの問題である可能性があります。
理想的な解決策は、他の要素に影響を与えない特定の小道具を使用することです。あなたの場合、これtopは画像の位置をに設定した後、プロパティで行うことができますrelative

a img{
    position : relative;
    top : 0;
}
a:hover img{
    top : -4px;
}

これが実際のデモです: http://jsfiddle.net/p7Lxz/

于 2012-06-23T18:51:09.907 に答える