0

このページで見たロールオーバー リンクがあります: http://www.webdesignerdepot.com/2012/11/40-essential-wordpress-plugins/ (ロールオーバー リンクを参照: Jetpack、Jetpack lite、sociable など)動作させることができません:

HTML:

<a class="roll-link"><span>This is a link</span></a>

.roll-link span {
   display: block;
   color: #DD4D42;
   position: relative;
   padding: 0 2px;
   -webkit-transition: all 400ms ease;
   -moz-transition: all 400ms ease;
   -ms-transition: all 400ms ease;
   transition: all 400ms ease;
   -webkit-transform-origin: 50% 0%;
   -moz-transform-origin: 50% 0%;
   -ms-transform-origin: 50% 0%;
   transform-origin: 50% 0%;
   -webkit-transform-style: preserve-3d;
   -moz-transform-style: preserve-3d;
   -ms-transform-style: preserve-3d;
   transform-style: preserve-3d;
}

私のフィドルを見る

.roll-link:hover span {
   background: #DD4D42;
   -webkit-transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
   -moz-transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
   -ms-transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
   transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
}
4

2 に答える 2

2

.roll-link基本要素のスタイルや.roll-link:after、リンクのコンテンツを表示するのスタイルなど、一部のスタイルが欠落していました。これは、効果のあるjsFiddleです:http://jsfiddle.net/CNSWn/7/

data-titleこれは非常に巧妙な効果であり、ホバー時にリンクの 2 番目の「面」を表示するために属性を使用した方法を研究するのに時間を費やす価値があります。

于 2013-04-04T05:25:25.567 に答える
1

どうぞ:

HTML:

<a class="roll-link external"><span data-title="Jetpack">Jetpack</span></a>

CSS:

a {
    cursor: pointer;
    color: #dd4d42;
    font-weight: bold;
    text-decoration:none;
}

.roll-link {
    display: inline-block;
    overflow: hidden;
    vertical-align: top;
    -webkit-perspective: 600px;
    -moz-perspective: 600px;
    -ms-perspective: 600px;
    perspective: 600px;
    -webkit-perspective-origin: 50% 50%;
    -moz-perspective-origin: 50% 50%;
    -ms-perspective-origin: 50% 50%;
    perspective-origin: 50% 50%;     
}

.roll-link span {
    display: block;
    position: relative;
    padding: 0 2px;
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -ms-transition: all 400ms ease;
    transition: all 400ms ease;
    -webkit-transform-origin: 50% 0%;
    -moz-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;
}

.roll-link:hover span {
    background: #DD4D42;    
    -webkit-transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
    -moz-transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
    -ms-transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
    transform: translate3d( 0px, 0px, -30px ) rotateX( 90deg );
}

.roll-link span:after {
    content: attr(data-title);
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    padding: 0 2px;
    color: #fff;
    background: #DD4D42;
    -webkit-transform-origin: 50% 0%;
    -moz-transform-origin: 50% 0%;
    -ms-transform-origin: 50% 0%;
    transform-origin: 50% 0%;
    -webkit-transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
    -moz-transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
    -ms-transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
    transform: translate3d( 0px, 105%, 0px ) rotateX( -90deg );
}

デモ: http://jsfiddle.net/pR4sg/

于 2013-04-04T05:37:17.477 に答える