2012-03-27 8 views
47
Bootstrap 2

W bootstrap 2, co zalecany sposób od kolejce etykiety i tylko do odczytu pola tekstowe w formie. Poniższy przykładowy kod tworzy niewspółosiowe pola:Jak wyrównać etykiety i tylko do odczytu pola w formularzu

<form class="form-horizontal"> 
    <fieldset> 
     <legend>Sample</legend>  
     <div class="control-group"> 
      <label class="control-label">Readonly Field</label> 
      <div class="controls"> 
       Lorem Ipsum and then some 
      </div> 
     </div> 
    </fieldset> 
</form> 

Pamiętaj, że sam mogę to naprawić niestandardowym CSS. To nie jest problem. To po prostu wydaje się głupie, że to nie jest wbudowane, więc czuję, że muszę coś przeoczyć.

+0

jaka wersja BS? –

Odpowiedz

85

Można użyć wejścia zablokowany do edycji

<span class="input-xlarge uneditable-input">Lorem Ipsum and then some</span> 

EDIT:

Od bootstrap 3,0 klasa został dodany do obsługi tego

Kiedy trzeba umieścić regularną, tekst statyczny obok etykiety formularza w formie poziomej użyj klasy .form-control-static na <p>

<div class="controls"> 
    <p class="form-control-static">Lorem Ipsum and then some</p> 
</div> 
+0

Właśnie zdałem sobie sprawę, że moje pytanie było błędne, na które odpowiedziałeś doskonale, więc zaznaczę to jako właściwą odpowiedź. Jednak jakikolwiek pomysł, co zrobić, jeśli chcę po prostu tekst po prawej stronie? – batkuip

+0

chcesz tekst po prawej stronie wejścia? –

+0

Prawa strona etykiety. W niektórych przypadkach posiadanie pola tekstowego tylko do odczytu nie pasuje. Jak mój oryginalny przykład. – batkuip

2

Istnieje hack. Można użyć < etykietę > z klasą "checkbox"

W twoim przypadku:

 
<div class="controls"> 
<label class="checkbox"> 
    Lorem Ipsum and then some 
</label> 
</div> 
+0

"pole wyboru" powoduje, że wyrównanie w pionie jest poprawne (szukamy czegoś z dopełnieniem-góry: 5px, tak?), Ale nie działa na mojej stronie, ponieważ dodaje również niepotrzebne dopełnienie 20px. Myślę, że prawdopodobnie pójdę z klasą niestandardową. – mwardm