2016-10-26 20 views
0

私の相対的なdiv要素内で絶対位置を指定して要素を配置しようとしています。この写真に示すように、しかし、それは、お互いの上に乱雑だ:おそらくcss、相対的な位置決め要素内の絶対位置決め要素が乱雑になる

enter image description here

ない最高の画像。しかし、2つの同じdivがお互いの上にあります。

私は、場所そのものの2番目のコピーが最初のものの下にありたいと思います。そして、相対的な考え方がそれを行う方法でした。しかし、彼らは絶対的な位置付けを持っている場合、私は相対的なコンテナの中のdivの合併症を得ているようですね?このようなことのための絶対位置を使用して

<div class="industryoutter"> 
     <div class ="industryinnerleft"> 
     Agricultural Chemicals 
     </div> 
     <div class ="industryinnerright"> 
     C 
     </div> 
    </div> 
    <div class="industryoutter"> 
     <div class ="industryinnerleft"> 
     Agricultural Chemicals 
     </div> 
     <div class ="industryinnerright"> 
     C 
     </div> 
    </div> 

CSS

.industryoutter { 
    position: relative; 
    background-color: #c0c0c0; 
    width: 210; 
} 

.industryinnerleft { 
    position: absolute; 
    left: 5px; 
} 

.industryinnerright { 
    position: absolute; 
    right: 5px; 
} 
+0

「width:210」は、ユニットを省略したので何も行いません(0桁以外は必須です)。それとは別に、私があなたが達成したいと思っていることは全くわかりません。また、ブロックレベルの要素に 'position:absolute'を設定すると、要素が得る幅と同じ大きさのグラブが取り除かれます。代わりに、コンテンツを保持するために必要な最小サイズに縮小されます。その次に、外側のdivは計算された高さが0になることに注意してください。それは 'position:absolute;'を持つ子しかないからです。 – connexo

+1

'.industryoutter'に高さを加えてみてください –

+1

そのようなポジショニングは良い習慣ではありませんあなたがこのようなもののためにそれを使い始めると**ロット**の問題が発生します。シンプルなフロートやフレックスボックスのレイアウトを使う方がはるかに良い –

答えて

2

がちょうど悪い習慣である、それはすべてが難しくなります。

.industryoutter { 
 
    position: relative; 
 
    background-color: #c0c0c0; 
 
    width: 210px; 
 
    overflow: hidden; 
 
} 
 
.industryinnerright { 
 
    float: right 
 
}
<div class="industryoutter"> 
 
    Agricultural Chemicals 
 
    <span class="industryinnerright">C</span> 
 
</div> 
 
<div class="industryoutter"> 
 
    Agricultural Chemicals 
 
    <span class="industryinnerright">C</span> 
 
</div>

あなたはそれがその内容の高さに合わせて成長する.industryoutteroverflow: hidden;を追加していることを確認してください:あなたができる最も簡単な方法は次のように、ちょうど.industryinnerright権利をフロートすることです。 div内の左のテキストを折り返す必要もなくなりました。

+0

どうやってこの出力が得られますか?私はちょうど並んで印刷するように見えたあなたのコードを試してみることを意味します。 'industryoutter'に高さを加えた方が良いでしょう。 –

+0

@AakashThakurどういう意味ですか?この場合、設定された高さを追加する必要はありません。 1つの小さなエラーが修正されました –

+0

yourslefのためのあなたの謎をチェックしてください:https://jsfiddle.net/ztfeor7c/1/ –

2

コンテナ内の高さを設定して、内側のdivを操作するだけです。

.industryoutter { 
    position: relative; 
    background-color: #c0c0c0; 
    width: 210px; 
    height: 50px; 
} 
関連する問題