/ / IE (11) niewłaściwa obsługa wielokolumn CSS? - css, Internet Explorer, wiele kolumn

IE (11) niewłaściwa obsługa wielu kolumn CSS? - css, Internet Explorer, wiele kolumn

Buduję układ dwukolumnowy za pomocą wielu kolumn CSS i chcę podpowiedzieć, gdzie rozbić kolumny.

Więc mówię: columns: 2 na pojemniku, i break-before: column na dziecku, gdzie chcę przerwać.

IE (11 w moim przypadku) decyduje się podzielić moją zawartość na 3 kolumny i przepełnienia na prawo od jej pola :-(

Chrome (korzystając z prefiksowanych alternatyw -webkit-columns:2 i -webkit-column-break-before: always) ładnie się zachowuje.

Fiddle at: http://jsfiddle.net/jDecq/6/

Czy robię coś złego tutaj?

Czy to niewłaściwe zachowanie IE?

Wszelkie sugestie dotyczące obejścia problemu?

Odpowiedzi:

2 dla odpowiedzi № 1

Ponieważ jestem bardzo zainteresowany tym pytaniem, przestudiowałem specyfikację i przykłady układów wielokolumnowych.

Najpierw muszę powiedzieć, że specyfik jest okropnie "nieprecyzyjny"!
Ale wydaje się, że każda definicja przerwy ma pierwszeństwo przed column-count wartość (chociaż nie mogłem znaleźć tego wprost w specyfikacji lub nigdzie indziej).

Dzieje się tak tylko wtedy, gdy zgodnie z wielokolumnową pseudo-algorytm, odpowiedni element, który ustawia punkt przerwania, jest już częścią ostatniej kolumny (jak na przykład w skrzypce przykładowej).

Przykład podane przez @GCyrillus (patrz komentarze na pytanie)po prostu działa, ponieważ ustawienie wysokości wymusza na algorytmie najpierw wypełnienie podanej wysokości, zanim dodatkowe pola kolumnowe zostaną utworzone w kierunku w linii.
Możesz zobaczyć efekt "oryginalny", jeśli zmienisz wysokość z 20em na 10em!

W końcu mówię, że to nie błąd, a IE zachowuje się poprawnie.

Przynajmniej może to być błąd lub wadaalgorytm wielokolumnowy, aby nie przeliczyć ani nie uzupełnić kolumn, aby pomimo wszelkich przerw przestrzegać wartości licznika kolumn. Logicznie można to zrobić tylko pod warunkiem, że liczba zdefiniowanych punktów przerwania jest o jeden mniejsza niż wartość liczby kolumn.

W rzeczywistości IE 10+ jest jedyną obsługiwaną przeglądarkąmoduł wielokolumnowy zawierający właściwości break-xy, trudno jest stwierdzić, czy zachowanie jest dobre czy złe i jak inne przeglądarki poradzą sobie z tym w przyszłości!

Na razie nie polecałbym w ogóle używać tych właściwości.