0

次のHTMLでは、.leftにfloat:rightがあり、これは変更できません。.left divのfloat:rightを変更せずに、.right divを右側に移動することはまだ可能ですか?

HTML:

<div class="box">   
    <div class="wrap">
        <div class="left">This should be left.</div>
    </div>
     <div class="right">This should be right</div>    
</div>

CSS:

.box{
    width: 300px;
    overflow: hidden;
    border: 1px solid red;    
}

.left{
    width: 100px;
    float: right;    /* cannot change */
    border: 1px solid blue;     
}

.right{
    width: 100px;
    float: right;
    border: 1px solid green;
}

デモ: http: //jsfiddle.net/y5UEu/

4

6 に答える 6

2

左のdivの前に右のdivを置くことができます。

<div class="box">   
    <div class="wrap">
        <div class="right">This should be right</div>  
        <div class="left">This should be left.</div>
    </div>

</div>

JSフィドル

于 2013-03-10T10:04:56.647 に答える
2
<div class="box">
  <div class="right">This should be right</div>
  <div class="wrap">
    <div class="left">This should be left.</div>
  </div>
</div>
于 2013-03-10T10:15:02.253 に答える
1

別の方法:

html構造を変更できない場合は、 すでにそこにあるので
、いくつかのcssをwrapクラスに適用できます。

.wrap {
    width: 198px;
    float: left;
}

幅198pxはあなたの境界線に対応するためのものです。
要件を満たすために、これを好きなように変更できます。

.wrapクラスのfloatleftプロパティは、必要なものを提供します。

于 2013-03-10T10:11:30.687 に答える
1

これで試してみてください

これをCssコードに追加します:

    .wrap{

フロート:左;
}

HTML:

<div class="box">   
   <div class="right">This should be right</div>   
<div class="wrap">
    <div class="left">This should be left.</div>
</div>

于 2013-03-10T10:12:04.750 に答える
1

これを行うだけです

html

<div class="box">   
    <div class="wrap">
        <div class="left leftCol">This should be left.</div>
    </div>
     <div class="right">This should be right</div>    
</div>

css

.box{
    width: 300px;
    overflow: hidden;
    border: 1px solid red;    
}

.left{
    width: 100px;
    float: right;
    border: 1px solid blue;     
}

.right{
    width: 100px;
    float: right;
    border: 1px solid green;
}
.leftCol {
    float:left !important;
}

デモ

于 2013-03-10T10:12:18.260 に答える
1

簡単に定義します:

.left {float:left!important; }

これは既存のものに取って代わります.left {float:right;}

HTMLは変更できないと思いますので、これはカスタムCSSを既存のWebサイトに適用する状況で機能するソリューションです。

于 2013-03-10T10:14:31.500 に答える