Bootstrap 3: yalnızca col-lg için sağa çekin


127

Bootstrap 3'te yeni .... Düzenimde:

<div class="row">
    <div class="col-lg-6 col-md-6">elements 1</div>
    <div class="col-lg-6 col-md-6">
         <div class="pull-right">
            elements 2
         </div>
    </div>
</div>

"Öğeler 2" nin, renklendirme ekranlarından daha küçük boyutlara hizalanmamasını istiyorum. Sınıfı sadece col-lg-6 için çok etkili bir şekilde çekmek ...

Bunu nasıl başarabilirim?

İşte bir keman: http://jsfiddle.net/thibs/Y6WPz/

Teşekkür ederim



Öyleyse bu artık Bootstrap 4'te bir şey . Sadece kullanmak order-lg-1, order-lg-2sütunlarınıza etc.on.
— limfinity

Yanıtlar:


156

"2. öğe" yi daha küçük bir sütuna (yani:) koyabilir col-2ve sonra pushyalnızca daha büyük ekranlarda kullanabilirsiniz :

<div class="row">
    <div class="col-lg-6 col-xs-6">elements 1</div>
    <div class="col-lg-6 col-xs-6">
      <div class="row">
       <div class="col-lg-2 col-lg-push-10 col-md-2 col-md-push-0 col-sm-2 col-sm-push-0 col-xs-2 col-xs-push-0">
         <div class="pull-right">elements 2</div>
       </div>
      </div>
    </div>
</div>

Demo: http://bootply.com/88095

Diğer bir seçenek de .pull-right@media sorgusu kullanarak kayan noktayı geçersiz kılmaktır.

@media (max-width: 1200px) {
    .row .col-lg-6 > .pull-right {
        float: none !important;
    }
}

Son olarak, başka bir seçenek de kendi .pull-right-lgCSS sınıfınızı oluşturmaktır .

@media (min-width: 1200px) {
    .pull-right-lg {
        float: right;
    }
}

GÜNCELLEME

Bootstrap 4 , duyarlı kaymalar içerir , bu nedenle bu durumda yalnızca kullanırsınız float-lg-right.
Ekstra CSS gerekmez .

Bootstrap 4 Demosu


bunun için teşekkürler, ancak içerik 6 satırın tamamını kullanmalı, aksi takdirde sarar, ki bunu istemeyiz.
— Thibs

bir medya sorgusu olmamasını umuyordu, ama olacak. Teşekkürler
— Thibs

28

Bu LESS parçacığını deneyin (Yukarıdaki örneklerden ve grid.less'taki medya sorgusu karışımlarından oluşturulmuştur).

@media (min-width: @screen-sm-min) {
.pull-right-sm {
  float: right;
}
}
@media (min-width: @screen-md-min) {
.pull-right-md {
  float: right;
}
}
@media (min-width: @screen-lg-min) {
.pull-right-lg {
  float: right;
}
}

Bu çözümü kazın ty!
— Pez

3
Bu, bootstrap'e eklenmelidir.
— Lorem Ipsum Dolor

20
.pull-right-not-xs, .pull-right-not-sm, .pull-right-not-md, .pull-right-not-lg{
    float: right;
}

.pull-left-not-xs, .pull-left-not-sm, .pull-left-not-md, .pull-left-not-lg{
    float: left;
}
@media (max-width: 767px) {    
    .pull-right-not-xs, .pull-left-not-xs{
        float: none;
    }
    .pull-right-xs {
        float: right;
    }
    .pull-left-xs {
        float: left;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .pull-right-not-sm, .pull-left-not-sm{
        float: none;
    }
    .pull-right-sm {
        float: right;
    }
    .pull-left-sm {
        float: left;
    }
}
@media (min-width: 992px) and (max-width: 1199px) {
    .pull-right-not-md, .pull-left-not-md{
        float: none;
    }
    .pull-right-md {
        float: right;
    }
    .pull-left-md {
        float: left;
    }
}
@media (min-width: 1200px) {
    .pull-right-not-lg, .pull-left-not-lg{
        float: none;
    }
    .pull-right-lg {
        float: right;
    }
    .pull-left-lg {
        float: left;
    }
}

Güzel, bu varsayılan Bootstrap'in bir parçası olmalı!
— Owen

12

Medya sorguları ile kendi sınıfınızı oluşturmanıza gerek yok. Bootstrap 3, Sütun Sıralaması altında medya kesme noktaları için kayan sıralamaya zaten sahiptir: http://getbootstrap.com/css/#grid-column-ordering

Sınıf için sözdizimi col-<#grid-size>-(push|pull)-<#cols>nerede<#grid-size> , xs, sm, md veya lg'nin olduğu ve <#cols>bu ızgara boyutu için sütunun ne kadar uzağa hareket etmesini istediğinizdir. İtme veya çekme elbette sola veya sağa doğru.

Her zaman kullanıyorum, bu yüzden iyi çalıştığını biliyorum.


3

Çok iyi çalışıyor:

/* small screen portrait */

@media (max-width: 321px) {

  .pull-right { 
    float: none!important; 
  }

}


/* small screen lanscape */

@media (max-width: 480px) {

  .pull-right {
    float: none!important; 
  }

}

3

Bootstrap 3 uygulamanıza aşağıda gösterilen CSS'yi eklemek,

pull-{ε|sm-|md-|lg-}left
pull-{ε|sm-|md-|lg-}right

tıpkı yeni gibi çalışan sınıflar

float-{ε|sm-|md-|lg-|xl-}left
float-{ε|sm-|md-|lg-|xl-}right

Bootstrap 4'te tanıtılan sınıflar:

@media (min-width: 768px) {
    .pull-sm-left {
        float: left !important;
    }
    .pull-sm-right {
        float: right !important;
    }
    .pull-sm-none {
        float: none !important;
    }
}
@media (min-width: 992px) {
    .pull-md-left {
        float: left !important;
    }
    .pull-md-right {
        float: right !important;
    }
    .pull-md-none {
        float: none !important;
    }
}
@media (min-width: 1200px) {
    .pull-lg-left {
        float: left !important;
    }
    .pull-lg-right {
        float: right !important;
    }
    .pull-lg-none {
        float: none !important;
    }
}
.pull-none {
    float: none !important;
}

Bunun dışında ekler

pull-{ε|sm-|md-|lg-}none

tamlık için, uyumlu olmak

float-{ε|sm-|md-|lg-|xl-}none

Bootstrap'ten 4.


2

Metin hizalamayla ilgilenenler için basit bir çözüm, yeni bir sınıf oluşturmaktır:

.text-right-large {
    text-align: right;
}
@media (max-width: 991px) {
    .text-right-large {
        text-align: left;
    }
}

Ardından bu sınıfı ekleyin:

<div class="row">
    <div class="col-lg-6 col-md-6">elements 1</div>
    <div class="col-lg-6 col-md-6 text-right-large">
        elements 2
    </div>
</div>

2

Sass'ı kullanmak çok basit, sadece şunu kullanın @extend:

.pull-right-xs { 
    @extend .pull-right;
 }

1

Ben bunu kullanıyorum. diğer boyutlar için @ screen-md-max'ı değiştirin

/* Pull left in lg resolutions */
@media (min-width: @screen-md-max) {
    .pull-xs-right {
        float: right !important;
    }
    .pull-xs-left {
        float: left !important;
    }

    .radio-inline.pull-xs-left  + .radio-inline.pull-xs-left ,
    .checkbox-inline.pull-xs-left  + .checkbox-inline.pull-xs-left  {
        margin-left: 0;
    }
    .radio-inline.pull-xs-left, .checkbox-inline.pull-xs-left{
        margin-right: 10px;
    }
}


1

Sadece bootstrap'in duyarlı yardımcı sınıflarını kullanın!

Bu görev için en iyi çözüm aşağıdaki kodu kullanmaktır:

<div class="row">
    <div class="col-lg-6 col-md-6">elements 1</div>
    <div class="col-lg-6 col-md-6 text-right">
        <div class="visible-lg-inline-block visible-md-block visible-sm-block visible-xs-block">
            elements 2
        </div>
    </div>
</div>

Öğe, yalnızca lgekranlarda sağa hizalanacaktır - geri kalanında displayözellik, öğe blockiçin varsayılan olarak olduğu gibi ayarlanacaktır div. Bu yaklaşım, text-rightyerine ana öğedeki sınıfı kullanıyor pull-right.

Alternatif çözüm:

En büyük dezavantaj, içindeki html kodunun iki kez tekrarlanması gerektiğidir.

<div class="row">
    <div class="col-lg-6 col-md-6">elements 1</div>
    <div class="col-lg-6 col-md-6">
         <div class="pull-right visible-lg">
            elements 2
         </div>
         <div class="hidden-lg">
            elements 2
         </div>
    </div>
</div>

1

Sütun sırasını değiştirmek için itme ve çekme işlevini kullanabilirsiniz. Bir sütunu çekip diğerini büyük cihazlarda itiyorsunuz:

<div class="row">
    <div class="col-lg-6 col-md-6 col-lg-pull-6">elements 1</div>
    <div class="col-lg-6 col-md-6 col-lg-push-6">
         <div>
            elements 2
         </div>
    </div>
</div>

0

şimdi bootstrap 4'ü dahil edin:

@import url('https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.3/css/bootstrap.min.css');

ve kod şu şekilde olmalıdır:

<div class="row">
    <div class="col-lg-6 col-md-6" style="border:solid 1px red">elements 1</div>
    <div class="col-lg-6 col-md-6" style="border:solid 1px red">
         <div class="pull-lg-right pull-xl-right">
            elements 2
         </div>
    </div>
</div>
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.