Divの「左」と「右」を列のように並べて並べるにはどうすればよいですか?
私はそれらにfloat:leftを使用できることを知っていますが、それはうまくいきます...しかし、ここのステップ5と6では http://www.barelyfitz.com/screencast...s/positioning/ 男はそれが可能であると言いますが、私はそれを動作させることはできません...
コード:
<style>
div.left {
background:blue;
height:200px;
width:300px;
}
div.right{
background:green;
height:300px;
width:100px;
}
.container{
background:black;
height:400px;
width:450px;
}
</style>
<div class="container">
<div class="left">
LEFT
</div>
<div class="right">
RIGHT
</div>
</div>
float
sを使用しない場合の通常の方法は、display: inline-block
: http://www.jsfiddle.net/zygnz/1/
.container div {
display: inline-block;
}
ただし、最初のブロックの後に追加のスペースがあります。これは、2つのブロックがinline
やa
のような本質的にem
要素であるためです。 2つのカウントの間。これにより、レイアウトが崩れたり、見栄えが悪くなったりする可能性があります。このため、文字間の空白をすべて削除しないことをお勧めします。
また、ほとんどの場合、フロートはより柔軟です。
また、CSS3 flexbox
レイアウトを使用することもできます。これは、最近では 十分にサポートされています です。
.container {
display: flex;
flex-flow: row nowrap;
justify-content: space-between;
background:black;
height:400px;
width:450px;
}
.left {
flex: 0 0 300px;
background:blue;
height:200px;
}
.right {
flex: 0 1 100px;
background:green;
height:300px;
}
私は現在これに取り組んでおり、すでに多くのソリューションを持っています。高品質のサイトを持っていることは素晴らしいことです。それは私の利便性のためにも使用できます。これらのことを書き留めないと、最終的に一部を忘れてしまうからです。また、何らかの新しいプログラミング/設計を開始する場合は、基本事項を書き留めておくことをお勧めします。
したがって、フロート関数が問題を引き起こしている場合、いくつかのオプションを試すことができます。
1つは、divタグのdivアライメントを変更することです。<div class="kosher" align=left>
これがあなたに合わない場合、そのようなマージンを持つ別のオプションがあります。
.leftdiv {
display: inline-block;
width: 40%;
float: left;
}
.rightdiv {
display: block;
margin-right: 20px;
margin-left: 45%;
}
<div align=left>
を削除することを忘れないでください。
つかいます display:table-cell;
.Leftと.Rightの間のスペースを削除するため
div.left {
background:blue;
height:200px;
width:300px;
}
div.right{
background:green;
height:300px;
width:100px;
}
.container{
background:black;
height:400px;
width:450px;
}
.container > div {
display: table-cell;
}
<div class="container">
<div>
<div class="left">
LEFT
</div>
</div>
<div>
<div class="right">
RIGHT
</div>
</div>
</div>
あなたは右divのマージンで試すことができます
margin: -200px 0 0 350px;