Я создаю систему меню, представленную пользователю в многоколоночном формате. Свойство column-count в CSS3 дает мне 90% пути, но у меня возникают трудности с выравниванием в Chrome.
Меню относительно простое:
Проблема выравнивания, с которой я сталкиваюсь, наиболее заметна с верхней границей и некоторой окраской фона на каждом элементе списка. В Firefox элементы списка всегда аккуратно выровнены по каждому столбцу, никогда не переходя в предыдущий / следующий столбец. В Chrome выравнивание - это мелочь, она зависит от количества присутствующих элементов списка и любых свойств отступов / полей.
Я разместил код для простого тестового примера здесь: http://pastebin.com/ Ede3JwdG
Проблема должна быть очевидна сразу: в Chrome первый элемент списка во втором столбце перетекает обратно в первый столбец. Когда вы удаляете элементы списка (щелкаете по ним), вы можете видеть, что выравнивание еще больше нарушается.
Я безуспешно пытался настроить отступы / поля для элементов списка: похоже, что в Chrome есть ошибочный алгоритм того, как он перемещает контент по многоколоночной структуре.
Основная причина, по которой я вообще не отказался от подсчета столбцов (в пользу создания вручную / Columnizer и т. д.), заключается в том, что система меню также включает в себя функцию перетаскивания через несколько подменю, а данные меню представлены в виде единой иерархии на основе списков, что позволяет получить чистый код.
Есть ли способ исправить проблему с выравниванием в Chrome, или мне просто нужно отказаться от столбца - count сейчас?
ДОБАВЛЕНО: