У меня макет из двух столбцов, как на этом рисунке:
Каждый столбец содержит строки, состоящие из значка и метки текста.
Каждая строка левого столбца должна быть выровнена по левому краю, как есть.
Строки правого столбца должны быть выровнены таким образом, чтобы самая широкая строка касалась правого края родительского контейнера, а остальные строки выровнялись так, чтобы их левые края были выровнены, как на этом рисунке:
Трудно обдумать это ... Я подумываю установить display
контейнера на flex
, установить flex
каждого столбца на 1
, чтобы они были одинаковой ширины, а затем попытаться что-то сделать со строками правого столбца , но я не знаю что. Я не знаю заранее, какими будут подписи к тексту, но уверен, что они могут сильно различаться по длине и могут переноситься. Можно ли выровнять этикетку упаковки по правому краю после упаковки?
Вот код, который у меня есть, https://jsfiddle.net/t7qksr3g/1/. Он основан на ответе @Kretiss, но работает некорректно. Когда текст в правом столбце переносится, он не выравнивается по правому краю.
Я надеюсь, что кто-то может мне помочь. Решение может полностью отличаться от того, что я описал выше, это не требование, чтобы строки действительно находились внутри вертикальных контейнеров, мне просто нужно добиться визуального эффекта.
ОБНОВЛЕНИЕ
Я думаю, что то, что я хочу достичь, может быть невозможно без использования JS, потому что логика браузера для вычисления ширины контейнера с обернутым текстом внутри не работает таким образом, чтобы это позволяло Ширина CSS / максимальная ширина при переносе строки?.