Saya membuat situs dengan DIV
s. Semuanya berfungsi kecuali ketika saya membuat DIV. Saya membuatnya seperti ini (contoh):
newdiv {
width: 200px;
height: 60px;
padding-left: 20px;
text-align: left;
}
Ketika saya menambahkan padding-left
properti, lebar DIV
perubahan ke 220px, dan saya ingin tetap di 200px.
Katakanlah saya membuat yang lain DIV
bernama anotherdiv
persis sama dengan newdiv
, dan memasukkannya ke dalam newdiv
tetapi newdiv
tidak memiliki padding dan anotherdiv
memiliki padding-left: 20px
. Saya mendapatkan hal yang sama, newdiv
lebarnya adalah 220px.
Bagaimana saya bisa memperbaiki masalah ini?
Jawaban:
Tambahkan properti:
Catatan: Ini tidak akan berfungsi di Internet Explorer di bawah versi 8.
sumber
Letakkan div di newdiv Anda dengan
width: auto
danmargin-left: 20px
Hapus padding dari newdiv.
Halaman model Kotak W3 memiliki info bagus.
sumber
Coba ini
sumber
Jika Anda ingin membuat indentasi teks dalam div tanpa mengubah ukuran div gunakan CSS
text-indent
sebagai gantinyapadding-left
.sumber
cukup tambahkan
box-sizing: border-box;
sumber
Ya, itu persis sesuai dengan standar. Begitulah seharusnya bekerja.
Tidak, newdiv akan tetap memiliki lebar 200px.
sumber
ubah saja lebar div Anda menjadi 160px jika Anda memiliki padding 20px itu menambah 40px ekstra untuk lebar div Anda sehingga Anda perlu mengurangi 40px dari lebar untuk menjaga div Anda terlihat normal dan tidak terdistorsi dengan lebar tambahan di atasnya dan teks Anda semua kacau.
sumber