1. ホーム
  2. css

[解決済み] 2つのdivを隣り合わせに配置するには?

2022-01-28 08:21:15

質問

を考えてみましょう。 次のコード :

#wrapper {
    width: 500px;
    border: 1px solid black;
}
#first {
    width: 300px;
    border: 1px solid red;
}
#second {
    border: 1px solid green;
}
<div id="wrapper">
    <div id="first">Stack Overflow is for professional and enthusiast programmers, people who write code because they love it.</div>
    <div id="second">When you post a new question, other users will almost immediately see it and try to provide good answers. This often happens in a matter of minutes, so be sure to check back frequently when your question is still new for the best response.</div>
</div>

この場合、緑色のdivの高さがラッパーの高さを決定するはずです。

CSSでこれを実現するにはどうしたらよいでしょうか?

どのように解決するのですか?

一方または両方の内側のDivをフロートさせる。

1つのdivをフロートさせる。

#wrapper {
    width: 500px;
    border: 1px solid black;
    overflow: hidden; /* will contain if #first is longer than #second */
}
#first {
    width: 300px;
    float:left; /* add this */
    border: 1px solid red;
}
#second {
    border: 1px solid green;
    overflow: hidden; /* if you don't want #second to wrap below #first */
}

を、あるいは両方を浮かせる場合は、ラッパーを励行する必要があります。 div を、float された子の両方を含むようにします。さもないと、空の領域とみなされてボーダーが周囲に配置されません。

両方のdivをフロートさせる。

#wrapper {
    width: 500px;
    border: 1px solid black;
    overflow: hidden; /* add this to contain floated children */
}
#first {
    width: 300px;
    float:left; /* add this */
    border: 1px solid red;
}
#second {
    border: 1px solid green;
    float: left; /* add this */
}