1

margin: 260px 0 0 0;またはに応答しない要素が 2つありmargin-top: 260px;ます。理由はわかりません。margin: 260px 0 0 0;IE で開発ツールを開いて要素を検査すると、マージンはありますが、要素はまったく設定されていないかのように div の上部にとどまります。

またはa内の要素に対してマージンが機能しないのはなぜですか?.SideContainer a {...}.RightSide a {...}

        <section class="RightSide SideContainer">
            <a href="~/Shared/Services/WebDevelopment">Packages &amp; Pricing</a>
        </section>


    .SideContainer h1 {
        color: white;
    }

    .SideContainer a {
        margin: 260px 0 0 0;
    padding: 10px 15px 10px 15px;
    background-color: #ec462f;
    color: white;
    }

.RightSide {
    float: right;
}

    .RightSide a {
        margin-top: 200px;
    }
4

6 に答える 6

3

アンカー タグはinline要素であるため、上下のマージン スタイルが期待どおりに適用されません。displayプロパティをに設定するとinline-block、機能するはずです。

.SideContainer a, .RightSide a {
    display: inline-block;
}

要素のdisplayプロパティを に設定するinline-blockと、ソース コード内のスペースがレンダリングされることに注意してください。それを防ぐ方法をご紹介します

別の方法として、displayプロパティをblockに設定し、float必要に応じてプロパティを設定することもできます。

.SideContainer a, .RightSide a {
    display: block;
    float: left; /*if required*/
}
于 2013-05-22T06:10:35.673 に答える
0

アンカー タグがインライン要素であり、マージンに応答しないため、機能していません。

display:block.SideContainer a に CSSを追加すると、移動します。

http://codepen.io/anon/pen/Girwh

于 2013-05-22T06:11:28.620 に答える
0

インライン要素がマージンに反応しません。

a タグ表示ブロックを作成するか、通常の「a」タグのように正しく動作し、マージンにも応答するように右にフロートさせることができます。

これを試して:

.RightSide a {
    margin-top: 200px;
    float: right;
}
于 2013-05-22T06:16:22.090 に答える