2015-10-01 1 views
0

Мой вопрос немного похож на этот: CSS: alight left and right within the same line (without floats)
Разница в том, что у меня есть 3 элемента в строке (дата, название, автор), и я хочу, чтобы автор был выровнен правильно.Выровнять один из трех элементов справа

Вот JSFiddle с частью решения. Проблема в том, что в моей скрипте автор позиционируется абсолютно, поэтому, уменьшив окно, вы увидите, что в какой-то момент название будет перекрывать автора.

.e-author { 
    position: absolute; 
    right: 0; 
} 

TL; DR: Могу ли я выровнять один из трех элементов в самом правом без поплавков и/или дополнительных HTML элементов?

ответ

1

Вы можете использовать Flexbox для этого.

Комплект display:flex на вашем <li> и margin-left: auto на .e-author.

Вот обновление к вашей скрипкой: http://jsfiddle.net/dtqkm2sk/3/

Zoe Gillenwater имеет очень глубокий talk on CSS Flexbox, который покрывает этот и многие другие случаи использования.

+0

спасибо, я всегда хотел использовать flex для чего-то, но не нашел случай использования. Может быть, потому, что я действительно не знаю, насколько мощным является – Alex

+0

. Добро пожаловать. Вот набор общих случаев использования CSS Flexbox: https://philipwalton.github.io/solved-by-flexbox/ –

Смежные вопросы