Flexbox гэж юу вэ? Бүх CSS шинж чанаруудын тодорхойлолт, үндсэн зарчим, давуу болон сул талууд. Flexbox Flex дээрх ашигтай холбоосуудтай ажиллахад хэрэгтэй зарим жишээ

Flexbox-ууд нь "Ариун Grail" гэж нэрлэгддэг гурван багана гэх мэт түгээмэл хэрэглэгддэг вэбсайтын бүдүүвчийг үүсгэхэд тохиромжтой бөгөөд бүх баганууд нь агуулгаас үл хамааран бүтэн өндөр байх ёстой. Үүний зэрэгцээ, эх кодонд үндсэн агуулга нь навигацийн өмнө, хуудасны өөрөө үндсэн агуулга нь навигацийн дараа ирдэг.

Үүн шиг.

Жишээ

Малгай
Нийтлэл
Подвал

Flexbox-оос өмнө зарим хакеруудыг ашиглахгүйгээр энэ зохион байгуулалтад хүрэхэд нэлээд хэцүү байсан. Хөгжүүлэгчид контентын хэмжээ, дэлгэцийн хэмжээ зэргээс үл хамааран бүх зүйлийг зөв байрлуулахын тулд нэмэлт тэмдэглэгээ хийх, сөрөг зай хэрэглэх болон бусад заль мэх хийх шаардлагатай болдог. Гэхдээ дээрх жишээнээс харахад Flexbox дээр бүх зүйл илүү хялбар болсон.

Кодын хураангуйг энд оруулав. Энэ жишээн дээр бид #main элементийг уян хатан контейнер болгож, толгой ба хөлийг блок элемент болгон үлдээсэн. Өөрөөр хэлбэл, зөвхөн дунд хэсэг нь flexbox болдог. Үүнийг уян хатан сав болгосон хэсэг энд байна.

#main (дэлгэц: уян хатан; мин-өндөр: calc(100vh - 40vh); )

Флекс савыг хийхийн тулд зөвхөн display: flex-ийг ашигла. Мөн бид calc() функцийг ашиглан min-height-ийг тохируулж, #main-г харах талбайн өндрийн 100% болгож тохируулсан болохыг анхаарна уу. хасахтолгой ба суурийн өндөр (тус бүр 20vh). Энэ нь бага агуулгатай байсан ч зураглал нь дэлгэцийн өндрийг бүхэлд нь дүүргэхийг баталгаажуулдаг. Үүний үр дүнд, контент нь дэлгэцийн өндрөөс бага эзэлдэг бол хөл хэсэг нь хэзээ ч дээшлэхгүй бөгөөд доор нь хоосон зай үлдээхгүй.

Бид бүх элементүүдэд box-sizing: border-box-ыг ашигласан тул мин-өндөрийг тооцоолох нь маш энгийн байсан. Хэрэв бид үүнийг хийгээгүй бол бид нэмэх хэрэгтэй болно дүүргэх утгахасах дүн хүртэл.

Флекс савыг суулгасны дараа бид уян хатан элементүүдтэй харьцдаг.

#main > нийтлэл ( flex: 1; ) #main > nav, #main > aside ( flex: 0 0 20vw; background: beige; ) #main > nav ( дараалал: -1; )

Флекс шинж чанар нь уян хатан, уян хатан, уян хатан шинж чанаруудын товчлол юм. Эхний тохиолдолд бид зөвхөн нэг утгыг бичсэн тул flex нь flex-grow шинж чанарыг тохируулдаг. Хоёр дахь тохиолдолд бид бүх гурван утгыг бичсэн