Saya memiliki formulir umum, yang ingin saya beri gaya untuk menyelaraskan label dan bidang masukan. Untuk beberapa alasan saat saya memberikan lebar ke pemilih label, tidak ada yang terjadi:
HTML:
<form id="report-upload-form" method="POST" action="" enctype="multipart/form-data">
<p>
<label for="id_title">Title:</label>
<input id="id_title" type="text" class="input-text" name="title"></p>
<p>
<label for="id_description">Description:</label>
<textarea id="id_description" rows="10" cols="40" name="description"></textarea></p>
<p>
<label for="id_report">Upload Report:</label>
<input id="id_report" type="file" class="input-file" name="report">
</p>
</form>
CSS:
#report-upload-form {
background-color: #316091;
color: #ddeff1;
font-weight:bold;
margin: 23px auto 0 auto;
border-radius:10px;
width: 650px;
box-shadow: 0 0 2px 2px #d9d9d9;
}
#report-upload-form label {
padding-left:26px;
width:125px;
text-transform: uppercase;
}
#report-upload-form input[type=text],
#report-upload-form input[type=file],
#report-upload-form textarea {
width: 305px;
}
Keluaran:
Apa yang saya lakukan salah?
<p>
tag merupakan ide yang bagus?Jawaban:
Lakukan
display: inline-block
:http://jsfiddle.net/aqMN4/
sumber
Menggunakan
display: inline-block;
Penjelasan:
The
label
is an inline element, artinya ukurannya hanya sebesar yang dibutuhkan.Setel
display
properti ke salah satuinline-block
ataublock
agarwidth
properti diterapkan.Contoh:
sumber
label
elemen tidak menghormatiwidth
properti karena merupakan elemen inline. Saya ingin menunjukkan bahwainput
elemen tersebut juga merupakan elemen sebaris secara default. Tapi itu memungkinkan lebarnya diubah menggunakan properti lebar tidak sepertilabel
elemen. Karenanya alasan penulis tidak benar.Saya percaya label itu sebaris, sehingga tidak mengambil lebar. Mungkin coba gunakan "display: block" dan pergi dari sana.
sumber
Buat blok terlebih dahulu, lalu melayang ke kiri untuk berhenti mendorong blok berikutnya ke baris baru.
sumber
berikan gaya
semoga ini membantu '
sumber
label
display
Modus default adalahinline
, yang berarti secara otomatis menyesuaikan ukuran isinya. Untuk mengatur lebar Anda harus mengaturdisplay:block
dan kemudian melakukan beberapa faffing agar posisinya benar (mungkin melibatkanfloat
)sumber