0


0

jQuery「サイクル」プラグインによりコンテンツが中心になりません。これを修正するにはどうすればよいですか?

私はjQueryの「Cycle」プラグイン(http://jquery.malsup.com/cycle/)を使用して、「s …​ ただし、プラグインによってコンテンツが中央に配置されません。 昨日の朝、誰かが「要素がプラグインによって絶対に配置されていることを指摘しました: $ slides.css({position: 'absolute'、top:0、left:0})。hide()

私はJSを知らず、HTML / CSSの作業を続けています。そこで、ここの誰かがこの修正を知って助けてくれることを望んでいました。 そうでない場合:/

「left:50%」を追加しようとしましたが、中央に配置されていますが、スライドが壊れており、すべての「」が一度に表示されます。

{空} [編集]

HTMLとCSSは次のとおりです。

Hi
Goodbye



.slideshow {
width:940px;
height:64px;
text-align:center;
background-image:url(../images/quotes.png);
}

単独で、すべてが計画どおりに機能します。 次に、jQuery / Cycleプラグインを追加します。

// set position and zIndex on all the slides
    $slides.css({position: 'absolute', top:0, left:0}).hide().each(function(i) {
        var z;
        if (opts.backwards)
            z = first ? i <= first ? els.length + (i-first) : first-i : els.length-i;
        else
            z = first ? i >= first ? els.length - (i-first) : first-i : els.length-i;
        $(this).css('z-index', z)
    });

これがすべての問題です。 そのままで、「」は一度に1つずつ表示され、本来のようにフェードインおよびフェードアウトしますが、テキストは絶対配置のために中央に配置されなくなります。 そこで、「left:0」を「left:50%」に変更しました。 問題解決されたテキストは中央に配置されますが、NOWスパンはすべて同時に表示され、フェードイン/フェードアウトはありません。

1 回答


0


コードがなければ、これを呼び出すのは簡単ではありませんが、証言はある種のブロック要素内にあると思います。 その要素に position:relative`を適用すると、絶対位置の `sが含まれます。 あなたは実際にスパン自体にポジショニングスタイルを適用すべきではありません-むしろそれをプラグインに任せてください。

それが役立つことを願っています

'' '' '

編集

これを試してください:

.slideshow {
    width:940px;
    height:64px;
    background-image:url(../images/quotes.png);
    position:relative;
    }

.slideshow span {
    display:block;
    }

div.slideshow`の幅に一致するように `sの幅も手動で設定する必要があるかもしれません