Saya perlu memodifikasi bootstrap.css
agar sesuai dengan situs web saya. Saya merasa lebih baik untuk membuat custom.css
file terpisah daripada memodifikasi bootstrap.css
secara langsung, salah satu alasannya adalah bahwa harus bootstrap.css
mendapatkan pembaruan, saya akan menderita mencoba memasukkan kembali semua modifikasi saya. Saya akan mengorbankan beberapa waktu muat untuk gaya ini, tetapi diabaikan untuk beberapa gaya yang saya timpa.
Bagaimana cara mengganti bootstrap.css
agar saya menghapus gaya jangkar / kelas? Misalnya, jika saya ingin menghapus semua aturan gaya untuk legend
:
legend {
display: block;
width: 100%;
padding: 0;
margin-bottom: 20px;
font-size: 21px;
line-height: inherit;
color: #333333;
border: 0;
border-bottom: 1px solid #e5e5e5;
}
Saya hanya bisa menghapus semua itu bootstrap.css
, tetapi jika pemahaman saya tentang praktik terbaik tentang menimpa CSS benar, apa yang harus saya lakukan?
Agar jelas, saya ingin menghapus semua gaya legenda dan menggunakan nilai-nilai CSS orangtua. Jadi, menggabungkan jawaban Pranav, akankah saya melakukan yang berikut?
legend {
display: inherit !important;
width: inherit !important;
padding: inherit !important;
margin-bottom: inherit !important;
font-size: inherit !important;
line-height: inherit !important;
color: inherit !important;
border: inherit !important;
border-bottom: inherit !important;
}
(Saya berharap ada cara untuk melakukan sesuatu seperti yang berikut ini :)
legend {
clear: all;
}
sumber
#bootstrap-overrides
kelas?specificity
yang mendefinisikan "bobot" dari setiap pemilih css. Berikut ini beberapa perincian tentang hal itu: css-tricks.com/specifics-on-css-specificity/…Di bagian kepala html Anda tempat custom.css Anda di bawah bootstrap.css.
Kemudian di custom.css Anda harus menggunakan pemilih yang sama persis untuk elemen yang ingin Anda timpa. Dalam hal
legend
itu hanya tinggallegend
di custom.css Anda karena bootstrap belum punya penyeleksi yang lebih spesifikTetapi dalam kasus
h1
misalnya Anda harus mengurus pemilih yang lebih spesifik seperti.jumbotron h1
karenatidak akan menimpa
Berikut ini adalah penjelasan spesifik tentang penyeleksi css yang perlu Anda pahami untuk mengetahui dengan pasti aturan gaya mana yang akan diterapkan pada suatu elemen. http://css-tricks.com/specifics-on-css-specificity/
Yang lainnya hanyalah masalah salin / tempel dan edit gaya.
sumber
Seharusnya tidak terlalu mempengaruhi waktu muat karena Anda mengganti bagian dari stylesheet dasar.
Berikut adalah beberapa praktik terbaik yang saya ikuti secara pribadi:
!important
jika memungkinkan. Itu dapat menimpa beberapa gaya penting dari file CSS dasar.sumber
bootstrap-responsive.css
tidak ada lagi, apakah ini masih berlaku, atau apakah ini tidak relevan lagi?Tautkan file custom.css Anda sebagai entri terakhir di bawah bootstrap.css. Definisi gaya Custom.css akan menimpa bootstrap.css
Html
Salin semua definisi gaya legenda di custom.css dan buat perubahan di dalamnya (seperti margin-bottom: 5px; - Ini akan overrider margin-bottom: 20px;)
sumber
Untuk mengatur ulang gaya yang ditentukan
legend
dalam bootstrap, Anda dapat melakukan hal berikut dalam file css Anda:Ref: https://css-tricks.com/almanac/properties/a/all/
Nilai yang mungkin adalah:
initial
,inherit
&unset
.Catatan tambahan:
clear
properti digunakan sehubungan denganfloat
( https://css-tricks.com/almanac/properties/c/clear/ )sumber
Jika Anda berencana untuk membuat perubahan yang agak besar, mungkin ide yang baik untuk membuatnya langsung di bootstrap itu sendiri dan membangunnya kembali. Kemudian, Anda bisa mengurangi jumlah data yang dimuat.
Silakan lihat Bootstrap di GitHub untuk panduan build.
sumber
Lihat https://bootstrap.themes.guide/how-to-customize-bootstrap.html
Untuk Override CSS sederhana, Anda dapat menambahkan custom.css di bawah bootstrap.css
Untuk perubahan yang lebih luas, SASS adalah metode yang direkomendasikan.
Sebagai contoh, mari kita ubah warna latar belakang tubuh menjadi #eeeeee abu-abu terang, dan ubah warna kontekstual primer biru menjadi variabel $ ungu Bootstrap ...
sumber
Agak terlambat tapi yang saya lakukan adalah saya menambahkan kelas ke root
div
kemudian memperluas setiap elemen bootstrap di stylesheet khusus saya:sumber
Lihat contoh ini:
sumber
Saya menemukan bahwa (bootstrap 4) meletakkan CSS Anda sendiri di belakang
bootstrap.css
dan .js adalah solusi terbaik.Temukan item yang ingin Anda ubah (periksa elemen) dan gunakan deklarasi yang sama persis maka itu akan menimpa.
Butuh sedikit waktu untuk memikirkan hal ini.
sumber
Berikan ID untuk legenda dan terapkan css. Seperti menambahkan id halo ke legenda () css adalah sebagai berikut:
sumber
Gunakan jquery css, bukan css. . . jquery memiliki prioritas daripada bootstrap css ...
misalnya
sumber