0

マージンが適切に適用されない CKEditor のバグを解決しようとしています。Bootstrap を使用すると、最初のスパンのマージンは行の外側にあるため、事実上無視されます。ただし、CKEditor では、何らかの理由で行の内側にあるため、行内に十分なスペースがないため、最後のスパンが新しい行にプッシュされます。

これを解決する簡単な方法は、最初のスパンの margin-left を 0 に設定することです。そのため、これを content.css ファイルに追加することになりました。

[class*="span"]:first-of-type {
    margin-left: 0px;
}

すべてのスパン、すべての div またはすべての記事が同じである限り、これはうまく機能します。しかし、記事と余談がある場合、css はそれらを 2 つの異なる最初のタイプとして選択し、:first-of-type両方にルールを適用するように見えます。例えば:

<div class="container">
    <div class="row">
        <article class="span6">
            ...some html text
        </article>
        <aside class="offset3 span3">
            ...some more html text
        </aside>
    </div>
</div>

記事の margin-left だけを 0 に設定したい場合、記事と aside の両方で margin-left が 0 に設定されます。これは単なる例です。ブートストラップが許可する任意の数と同様に考えてください。

短い Google の後、私はこの質問を見つけました。これは私の問題に似ているようです。答えは:first-of-type、私が見た動作を説明するクラスではなく、実際には要素で機能することを説明しました。残念ながら、最初の div からいくつかの css を削除し、残りをそのまま残そうとしているため、その回答で指定された回避策は機能しません。

で最初の要素をターゲットにできる回避策はあります[class*="span"]か? CKEditor と Bootstrap を使用したこのバグに対する他の既知の解決策はありますか?

4

3 に答える 3

2

n番目の子セレクターを使用しないのはなぜですか:

[class*="span"]:nth-child(1) {}

于 2013-06-24T14:21:49.537 に答える
0

リセットして[class*=span]、他の人がフォローしているかどうかを確認してください。 (それが最初に立っているか、構造内のどこにあるかは関係ありません) .

その場合、同じレベルに他にある場合は、[class*=span]それらを元に戻すことができますsimilar original value

[class*=span]既に上書きされているので 、より強いセレクターで再度上書きする必要があります

[class*="span"] {
  color:green;
  margin-left:0;
  border:solid;
}
[class*="span"] ~ [class]
{
  margin-left: 20px;
  color:red;
}

http://codepen.io/gcyrillus/pen/nFixc

リンクすると、codepen はブートストラップを取ります

于 2013-06-24T14:51:02.540 に答える