Source

Ընդհանուր ակնարկ

Բաղադրիչներ և տարբերակներ՝ ձեր «Bootstrap» նախագիծը տեղադրելու համար, ներառյալ բեռնարկղերի փաթեթավորումը, հզոր ցանցային համակարգ, ճկուն մեդիա օբյեկտ և արձագանքող օգտակար դասեր:

Տարաներ

Կոնտեյներները Bootstrap-ում դասավորության ամենահիմնական տարրն են և պահանջվում են մեր լռելյայն ցանցային համակարգը օգտագործելիս : Ընտրեք արձագանքող, ֆիքսված լայնությամբ բեռնարկղից (նշանակում է դրա max-widthփոփոխությունները յուրաքանչյուր ընդմիջման կետում) կամ հեղուկի լայնությամբ (նշանակում է, որ այն միշտ 100%լայն է):

Թեև բեռնարկղերը կարող են լինել բնադրված, դասավորությունների մեծ մասը չի պահանջում ներդիր կոնտեյներ:

<div class="container">
  <!-- Content here -->
</div>

Օգտագործեք .container-fluidամբողջ լայնությամբ կոնտեյների համար՝ ընդգրկելով տեսադաշտի ամբողջ լայնությունը:

<div class="container-fluid">
  ...
</div>

Պատասխանատու ընդմիջման կետեր

Քանի որ Bootstrap-ը մշակվել է առաջին հերթին բջջային լինելու համար, մենք օգտագործում ենք մի քանի մեդիա հարցումներ ՝ մեր դասավորությունների և ինտերֆեյսների համար խելամիտ բեկման կետեր ստեղծելու համար: Այս ընդմիջման կետերը հիմնականում հիմնված են տեսադաշտի նվազագույն լայնությունների վրա և թույլ են տալիս մեծացնել տարրերը, երբ տեսադաշտը փոխվում է:

Bootstrap-ը հիմնականում օգտագործում է հետևյալ մեդիա հարցումների միջակայքերը կամ ընդմիջման կետերը մեր աղբյուրի Sass ֆայլերում մեր դասավորության, ցանցային համակարգի և բաղադրիչների համար:

// Extra small devices (portrait phones, less than 576px)
// No media query since this is the default in Bootstrap

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) { ... }

// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }

Քանի որ մենք գրում ենք մեր աղբյուրի CSS-ը Sass-ում, մեր բոլոր մեդիա հարցումները հասանելի են Sass խառնուրդների միջոցով.

@include media-breakpoint-up(xs) { ... }
@include media-breakpoint-up(sm) { ... }
@include media-breakpoint-up(md) { ... }
@include media-breakpoint-up(lg) { ... }
@include media-breakpoint-up(xl) { ... }

// Example usage:
@include media-breakpoint-up(sm) {
  .some-class {
    display: block;
  }
}

Մենք երբեմն օգտագործում ենք լրատվամիջոցների հարցումներ, որոնք գնում են այլ ուղղությամբ (տվյալ էկրանի չափը կամ ավելի փոքր ).

// Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }

// Small devices (landscape phones, less than 768px)
@media (max-width: 767.98px) { ... }

// Medium devices (tablets, less than 992px)
@media (max-width: 991.98px) { ... }

// Large devices (desktops, less than 1200px)
@media (max-width: 1199.98px) { ... }

// Extra large devices (large desktops)
// No media query since the extra-large breakpoint has no upper bound on its width

Նկատի ունեցեք, որ քանի որ բրաուզերները ներկայումս չեն աջակցում տիրույթի համատեքստի հարցումները , մենք աշխատում ենք կոտորակային լայնություններով սահմանափակումների min-և max-նախածանցների և տեսադաշտերի շուրջ (որոնք կարող են առաջանալ որոշակի պայմաններում, օրինակ, բարձր dpi սարքերում)՝ օգտագործելով այս համեմատությունների համար ավելի բարձր ճշգրտությամբ արժեքներ: .

Կրկին, այս լրատվամիջոցների հարցումները հասանելի են նաև Sass mixins-ի միջոցով.

@include media-breakpoint-down(xs) { ... }
@include media-breakpoint-down(sm) { ... }
@include media-breakpoint-down(md) { ... }
@include media-breakpoint-down(lg) { ... }

Կան նաև մեդիա հարցումներ և միքսներ՝ էկրանի չափսերի մեկ հատված թիրախավորելու համար՝ օգտագործելով բեկման կետերի նվազագույն և առավելագույն լայնությունները:

// Extra small devices (portrait phones, less than 576px)
@media (max-width: 575.98px) { ... }

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) and (max-width: 767.98px) { ... }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) and (max-width: 991.98px) { ... }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) and (max-width: 1199.98px) { ... }

// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { ... }

Այս մեդիա հարցումները հասանելի են նաև Sass mixins-ի միջոցով.

@include media-breakpoint-only(xs) { ... }
@include media-breakpoint-only(sm) { ... }
@include media-breakpoint-only(md) { ... }
@include media-breakpoint-only(lg) { ... }
@include media-breakpoint-only(xl) { ... }

Նմանապես, լրատվամիջոցների հարցումները կարող են ընդգրկել մի քանի բեկման կետերի լայնություններ.

// Example
// Apply styles starting from medium devices and up to extra large devices
@media (min-width: 768px) and (max-width: 1199.98px) { ... }

Նույն էկրանի չափի տիրույթը թիրախավորելու Sass խառնուրդը կլինի.

@include media-breakpoint-between(md, xl) { ... }

Z-ինդեքս

Bootstrap-ի մի քանի բաղադրիչներ օգտագործում z-indexեն CSS հատկությունը, որն օգնում է վերահսկել դասավորությունը՝ ապահովելով երրորդ առանցք՝ բովանդակությունը դասավորելու համար: Մենք օգտագործում ենք լռելյայն z-ինդեքսի սանդղակը Bootstrap-ում, որը նախագծված է պատշաճ կերպով շերտավորելու նավիգացիան, գործիքների հուշումներն ու պոպովերները, մոդալները և այլն:

Այս ավելի բարձր արժեքները սկսվում են կամայական թվից, բավականաչափ բարձր և կոնկրետ, որպեսզի իդեալականորեն խուսափեն կոնֆլիկտներից: Մեզ անհրաժեշտ է դրանց ստանդարտ հավաքածու մեր շերտավորված բաղադրիչների համար՝ գործիքների հուշումներ, փոփփերներ, նավագոտիներ, բացվող ցանկեր, մոդալներ, որպեսզի մենք կարողանանք ողջամտորեն հետևողական լինել վարքագծերում: Ոչ մի պատճառ չկա, որ մենք չենք կարող օգտագործել 100+ կամ 500+:

Մենք չենք խրախուսում այս անհատական ​​արժեքների հարմարեցումը. եթե փոխեք մեկը, հավանաբար պետք է փոխեք բոլորը:

$zindex-dropdown:          1000 !default;
$zindex-sticky:            1020 !default;
$zindex-fixed:             1030 !default;
$zindex-modal-backdrop:    1040 !default;
$zindex-modal:             1050 !default;
$zindex-popover:           1060 !default;
$zindex-tooltip:           1070 !default;

Բաղադրիչների մեջ համընկնող եզրագծերը կարգավորելու համար (օրինակ՝ կոճակներ և մուտքագրումներ մուտքային խմբերում), մենք օգտագործում ենք , -ի ցածր միանիշ z-indexարժեքներ 1, 2իսկ 3լռելյայն, սավառնող և ակտիվ վիճակների համար: Սավառնել/ֆոկուս/ակտիվ ժամանակ մենք ավելի բարձր արժեք ունեցող որոշակի տարր ենք առաջին պլան մղում՝ z-indexցույց տալու իրենց սահմանները եղբայրական տարրերի վրա: