Jak wyśrodkować div w CSS (Flexbox)
Zbuduj wizualnie układ flexbox CSS: kierunek elastyczny, justowanie zawartości, wyrównanie elementów, elastyczne zawijanie i przerwa w kontenerze, a także elastyczny wzrost dla każdego dziecka, elastyczne kurczenie i elastyczna podstawa, wszystko z podglądem na żywo i kopiowalnym CSS.
Wynik
Oto bezpośrednia odpowiedź na najczęściej zadawane pytanie w CSS: aby wyśrodkować element div, umieść display: flex, justify-content: center i wyrównanie-items: wyśrodkuj jego element nadrzędny. I tyle – trzy deklaracje na pojemniku, a dziecko siedzi w nim idealnie wyśrodkowane zarówno w poziomie, jak i w pionie, w dowolnym rozmiarze. Ta strona otwiera generator z dokładnie zastosowaną już kombinacją, więc poniższy podgląd pokazuje, że działa on obecnie na trzech ponumerowanych polach.
Przed Flexboxem centrowanie elementu div wymagało hacków: margines: 0 auto centrowany tylko w poziomie i działał tylko na bloku o stałej szerokości; centrowanie pionowe oznaczało pozycję: absolutną z ujemnymi marginesami lub sztuczkę z transformacją, obie kruche w momencie zmiany rozmiaru treści. justify-content obsługuje główną oś, a Align-Items obsługuje oś poprzeczną — razem centrują w obu kierunkach, niezależnie od tego, jak wysokie i szerokie jest dziecko, i właśnie dlatego ta para stała się standardową odpowiedzią.
Przeciągnij dowolną kontrolkę poniżej i obserwuj, jak trzy pola podglądu pozostają wyśrodkowane w miarę zmiany kształtu kontenera, lub dodaj odstęp między nimi. Kiedy wszystko będzie wyglądać dobrze, skopiuj blok CSS znajdujący się na dole bezpośrednio do arkusza stylów — działa on w ten sam sposób w każdej nowoczesnej przeglądarce, nie jest wymagana żadna biblioteka.