2016-08-31 19 views
0

jsFiddleのように右のチェックボックスに要素のリストを正当化したいと考えています。これを行う方法のベストプラクティスですか?伝統的には、互いにネストされたアイテムをフローティングすることはありませんでしたので、これが正しいかどうかを確認したかったのです。グリッド要素を整列/整列する

コード(https://jsfiddle.net/nmLx1ewu/2/):あなたはfloatを使用せずに簡単にソリューションを使用することができます

.list-group { 
 
    list-style:none; 
 
    margin-right:10px; 
 
} 
 
li { 
 
    width:50%; 
 
    display:inline-block; 
 
    float:left; 
 
} 
 
.items { 
 
    float:right; 
 
}
<ul class="list-group"> 
 
    <li> 
 
    <div class='items'> 
 
     <label>Toggle me</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>Longer text </label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>short</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>hi</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>more unjustified</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
</ul>

+0

それはCSSでレイアウトするために来るとき、間違った厳格または右何もありません。それはあなたのために動作し、必要な外観を達成するか?そうすれば、それはおそらく「正しい」ものに近いでしょう。 – CBroe

+0

これはflexboxを使っても実行できます:[JSFiddle](https://jsfiddle.net/nmLx1ewu/3/)。しかし、あなたの答えは、これを達成するための多くの方法があるので、主に意見に基づいています。 –

+2

それは動作しているので、私はこれが[コードレビュー](http://codereview.stackexchange.com/)のほうが多いとほとんど言っていました。 –

答えて

0

コード(https://jsfiddle.net/nmLx1ewu/4/):

.list-group { 
 
    list-style-type:none; 
 
    margin-right:10px; 
 
} 
 

 
li { 
 
    width:calc(50% - 2px); 
 
    display:inline-block; 
 
} 
 
.items { 
 
    text-align:right; 
 
} 
 
.items label, 
 
.items input { 
 
    display:inline-block; 
 
}
<ul class="list-group"> 
 
    <li> 
 
    <div class='items'> 
 
     <label>Toggle me</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>Longer text </label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>short</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>hi</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
    <li> 
 
    <div class='items'> 
 
     <label>more unjustified</label> 
 
     <input type="checkbox"> 
 
    </div> 
 
    </li> 
 
</ul>

+0

ありがとう、これは完全に動作します。フロートのないソリューションは、この後に私が持っている別のセクションを台無しにしていないので、より多くを助けます。 – BackbonePrincess