2013-06-04 16 views
5

Czytam specyfikację CSS2.1. Znam "kontekst formatowania bloków", "kontekst formatowania liniowego", "kontekst formatowania tabeli/siatki/flexu".Ile jest kontekstów formatowania CSS?

Chcę wiedzieć, ile rodzajów "kontekstu formatowania" istnieje? Czy istnieje pełna lista?

Odpowiedz

2

Zasadniczo "kontekst formatowania" jest po prostu obszarem, w którym pudełka potomne określonego rodzaju (np. Blok, inline, flex-item) są układane (lub formatowane) w normalnym przepływie.

W CSS2.1 istnieją tylko dwa rodzaje kontekstów formatowania: blok i wbudowany. Oba są opisane odpowiednio w section 9.4. Nie ma czegoś takiego jak kontekst formatowania tabeli, przynajmniej nie taki, jak zdefiniowano w CSS2.1; zamiast tego po prostu mówi, że jego zawartość jest ułożona w sposób tabelaryczny.

Inne rodzaje kontekstu formatowania są zdefiniowane w odpowiednich modułach CSS3, więc lista może nie być wyczerpująca. To powiedziawszy, niektóre przykłady obejmują:

  • : Flex Kontenery ustanawiają konteksty formatowania flex.
  • Grid Layout: kontenery grid ustanawiają konteksty formatowania siatki.
+0

PO opublikował pytanie uzupełniające, na które odpowiedziałem pod adresem http://stackoverflow.com/questions/16936297/when-does-a-box-establish-a-inline-formatting-context Jeśli masz czas, mógłbyś przejrzeć i skomentować. Dziękuję Ci. –

+0

Kontekst formatowania tabel został po raz pierwszy wprowadzony w sekcji [errata] (http://www.w3.org/Style/css2-updates/REC-CSS2-20110607-errata.html#s.9.4) w CSS2.1 (w sierpniu 2012), a następnie włączone do [szkic CSS2.2] (https://drafts.csswg.org/css/visuren.html#normal-flow). –

+0

@Ilaa Streltsyn: Dzięki, dobrze wiedzieć. – BoltClock