мамиле
Bootstrap'ти түзүү жана колдоо үчүн колдонулган жетектөөчү принциптер, стратегиялар жана ыкмалар жөнүндө билип алыңыз, ошондо сиз аны өзүңүз оңой ыңгайлаштыруу жана кеңейтүү үчүн.
Баштоо беттеринде долбоор жана анын сунуштары боюнча таанышуу экскурсиясы көрсөтүлсө да, бул документ Bootstrap'те эмне кылып жатканыбызга көңүл бурат. Башкалар бизден үйрөнүп, биз менен бирге салым кошуп, жакшыртууга жардам бериши үчүн бул биздин философиябызды желеде курууну түшүндүрөт.
Туура эмес угулган нерсени көрүп жатасызбы же балким жакшыраак кылса болот беле? Маселени ачыңыз — биз аны сиз менен талкуулаганды каалайбыз.
Жыйынтык
Биз булардын ар бирине кененирээк токтолобуз, бирок жогорку деңгээлде, бул жерде биздин мамилебизди жетектейт.
- Компоненттер жооп берүүгө жана мобилдүү болушу керек
- Компоненттер базалык класс менен курулуп, модификатор класстары аркылуу кеңейтилиши керек
- Компонент мамлекеттер жалпы z-индекс шкаласына баш ийиши керек
- Мүмкүнчүлүккө жараша, JavaScript үстүнөн HTML жана CSS ишке ашырууну тандаңыз
- Мүмкүн болушунча, ыңгайлаштырылган стилдердин үстүнөн утилиттерди колдонуңуз
- Мүмкүн болушунча катуу HTML талаптарын аткаруудан качыңыз (балдарды тандоочулар)
Жооптуу
Bootstrap'тин жооп берүүчү стилдери жооп берүү үчүн курулган, бул ыкма көбүнчө мобилдик биринчи деп аталат . Биз бул терминди документтерибизде колдонобуз жана ага негизинен макулбуз, бирок кээде ал өтө кенен болушу мүмкүн. Bootstrap'те ар бир компонент толугу менен жооп бербеши керек , бирок бул жооп берүүчү ыкма көрүү терезеси чоңойгон сайын стилдерди кошууга түртүп, CSS жокко чыгарууларды азайтат.
Bootstrap аркылуу сиз муну биздин медиа сурамдардан ачык көрөсүз. Көпчүлүк учурларда, биз min-width
белгилүү бир үзгүлтүккө учуроо чекитинде колдонула баштаган жана жогорку чекиттер аркылуу өтүүчү сурамдарды колдонобуз. Мисалы, а чексиздикке .d-none
чейин колдонулат . min-width: 0
Башка жагынан алганда, а .d-md-none
орто үзүү чекитинен жана андан жогору колдонулат.
Кээде биз max-width
компоненттин татаалдыгы талап кылынганда колдонобуз. Кээде, бул жокко чыгаруулар биздин компоненттерден негизги функцияларды кайра жазууга караганда, ишке ашыруу жана колдоо үчүн функционалдык жана акыл-эс жактан айкыныраак болот. Биз бул ыкманы чектөөгө аракет кылабыз, бирок аны мезгил-мезгили менен колдонобуз.
Класстар
Биздин кайра жүктөөдөн, кайчылаш браузерди нормалдаштыруу стилдер жадыбалынан тышкары, биздин бардык стилдер класстарды селектор катары колдонууга багытталган. Бул тип тандагычтардан (мисалы, input[type="text"]
) жана тышкаркы ата-эне класстардан (мисалы, .parent .child
) арылууну билдирет, бул стилдерди оңой эле жокко чыгаруу үчүн өтө спецификалык кылат.
Ошентип, компоненттер жалпы, жокко чыгарылбаган мүлк-нарк жуптарын камтыган базалык класс менен түзүлүшү керек. Мисалы, .btn
жана .btn-primary
. Биз , жана .btn
сыяктуу бардык жалпы стилдер үчүн колдонобуз . Андан кийин биз түс, фон-түс, чек-түс ж.б. кошуу үчүн модификаторлорду колдонобуз.display
padding
border-width
.btn-primary
Модификатор класстары бир нече вариантта өзгөртүлүүчү бир нече касиеттер же баалуулуктар болгондо гана колдонулушу керек. Модификаторлор дайыма эле зарыл боло бербейт, андыктан код саптарын чындап сактап, аларды түзүүдө керексиз жокко чыгаруулардан сактаныңыз. Модификаторлордун жакшы мисалдары бул биздин теманын түс класстары жана өлчөмдөрүнүн варианттары.
z-индекс шкалалары
Bootstrapте эки z-index
шкала бар — компоненттин ичиндеги элементтер жана үстүнкү компоненттер.
Компоненттик элементтер
- Bootstrap'тин кээ бир компоненттери касиетти өзгөртпөстөн, кош чектерди болтурбоо үчүн бири-бирин кайталаган элементтер менен курулган
border
. Мисалы, баскыч топтору, киргизүү топтору жана баракчалар. - Бул компоненттер аркылуу стандарттык
z-index
шкала бөлүшөт .0
3
0
демейки (баштапкы),1
болуп саналат:hover
,2
болуп саналат:active
/.active
, жана3
болуп саналат:focus
.- Бул ыкма биздин эң жогорку колдонуучу артыкчылыктуу күтүүлөрүбүзгө дал келет. Эгер элемент багытталган болсо, анда ал көрүү жана колдонуучунун назарында болот. Активдүү элементтер экинчи эң жогору, анткени алар абалды көрсөтөт. Hover үчүнчү орунда турат, анткени ал колдонуучунун ниетин көрсөтөт, бирок дээрлик бардык нерсени кармап турууга болот.
Катталуу компоненттери
Bootstrap кандайдыр бир катмар катары иштеген бир нече компоненттерди камтыйт. Буга эң жогорку ирети боюнча z-index
ылдый түшүүчү тизмелер, туруктуу жана жабышчаак навигация тилкелери, модалдар, куралдар кеңештери жана поповерлер кирет. Бул компоненттердин өз z-index
шкалалары бар 1000
. Бул баштапкы сан өзүм билемдик менен тандалган жана биздин стилдер менен долбооруңуздун ыңгайлаштырылган стилдеринин ортосунда кичинекей буфер катары кызмат кылат.
Ар бир катмар компоненти анын z-index
маанисин бир аз жогорулатат, ушундай жол менен жалпы UI принциптери колдонуучуга багытталган же курсордогу элементтерди ар дайым көрүү мүмкүнчүлүгүн берет. Мисалы, модаль - бул документти бөгөттөө (мисалы, сиз модалдын аракетинен башка эч кандай аракетти жасай албайсыз), ошондуктан биз аны навигация тилкелерибиздин үстүнө койдук.
Бул тууралуу көбүрөөк билүү биздин z-index
макет баракчабыздан .
JS аркылуу HTML жана CSS
Мүмкүн болушунча, биз HTML жана CSS-ти JavaScript аркылуу жазууну туура көрөбүз. Жалпысынан алганда, HTML жана CSS көбүрөөк жемиштүү жана ар кандай тажрыйба деңгээлиндеги көбүрөөк адамдар үчүн жеткиликтүү. HTML жана CSS браузериңизде JavaScriptге караганда ылдамыраак жана сиздин браузериңиз жалпысынан сиз үчүн көптөгөн функцияларды камсыз кылат.
data
Бул принцип атрибуттарды колдонгон биринчи класстагы JavaScript API . JavaScript плагиндерибизди колдонуу үчүн дээрлик эч кандай JavaScript жазуунун кереги жок; анын ордуна, HTML жаз. Бул тууралуу кененирээк биздин JavaScript серептөө барагынан окуңуз .
Акырында, биздин стилдер жалпы желе элементтеринин негизги жүрүм-турумуна негизделет. Мүмкүн болушунча, биз браузер берген нерселерди колдонууну каалайбыз. Мисалы, сиз .btn
классты дээрлик бардык элементтерге кое аласыз, бирок көпчүлүк элементтер эч кандай семантикалык маанини же браузердин иштешин камсыз кылбайт. Ошентип, анын ордуна биз <button>
s жана <a>
s колдонобуз.
Ошол эле татаал компоненттерге да тиешелүү. Киргизилген абалдын негизинде ата-энелик элементке класстарды кошуу үчүн өзүбүздүн форманы текшерүү плагинибизди жаза алсак да, бул бизге текстти кызыл деп айтууга мүмкүндүк берет, биз ар бир браузер берген :valid
/ псевдо-элементтерди колдонууну туура көрөбүз.:invalid
Утилиталар
Пайдалуу класстар — мурда Bootstrap 3'те жардамчы болгон — CSS кекиртектери жана барактын начар иштеши менен күрөшүүдө күчтүү өнөктөш. Пайдалуу класс, адатта, класс катары туюнтулган бир, өзгөрүлгүс касиет-баалуулук жупташуу (мисалы, .d-block
билдирет display: block;
). Алардын негизги жагымдуулугу HTML жазууда колдонуу ылдамдыгы жана сиз жаза турган жеке CSS көлөмүн чектөө.
Тактап айтканда, ыңгайлаштырылган CSSге байланыштуу, утилиталар сиздин эң көп кайталануучу касиет-нарк жуптарын бир класстарга кыскартуу менен файлдын көлөмүн көбөйтүү менен күрөшүүгө жардам берет. Бул сиздин долбоорлоруңузга масштабдуу таасирин тийгизиши мүмкүн.
Ийкемдүү HTML
Дайыма эле мүмкүн боло бербесе да, биз компоненттерге болгон HTML талаптарыбызда өтө догмалык болбош үчүн аракет кылабыз. Ошентип, биз CSS селекторлорубузда жалгыз класстарга көңүл бурабыз жана дароо балдар селекторлорунан качууга аракет кылабыз ( >
). Бул сизге ишке ашырууда көбүрөөк ийкемдүүлүктү берет жана биздин CSS жөнөкөй жана анча конкреттүү эмес болууга жардам берет.
Код конвенциялары
Code Guide (Bootstrap биргелешип жаратуучусунан, @mdo) HTML жана CSS-ти Bootstrap аркылуу кантип жазганыбызды документтештирет. Ал жалпы форматтоо, жалпы маанидеги демейкилер, менчик жана атрибут буйруктары жана башкалар үчүн көрсөтмөлөрдү аныктайт.
Бул стандарттарды жана башкаларды Sass/ CSS'ибизде колдонуу үчүн Stylelint колдонобуз. Биздин ыңгайлаштырылган Stylelint конфигурациябыз ачык булак жана башкалар колдонууга жана кеңейтүүгө жеткиликтүү.
Биз vnu-jarды стандарттык жана семантикалык HTMLди колдонуу, ошондой эле жалпы каталарды аныктоо үчүн колдонобуз.