Мне нужно создать однострочный макет с тремя столбцами. Каждый левый и правый столбцы должны отображать одно слово без усечения (они должны расширяться и сжиматься, чтобы соответствовать слову). Центральный столбец должен отображать потенциально длинную строку, усеченную для размещения между двумя столбцами.
Вот немного HTML, чтобы передать идею:
<div class="container">
<div class="left">Left</div>
<div class="center">Center center center center center center center</div>
<div class="right">Right</div>
</div>
И некоторые соответствующие CSS:
.container {
whitespace: nowrap;
}
.left {
display: inline-block;
}
.center {
display: inline-block;
overflow: hidden;
}
.right {
display: inline-block;
}
Следующий шаг - настроить центральный элемент на автоматическое расширение или сжатие, чтобы заполнить пространство между левым и правым элементами.
Что-то вроде center.width = container.width - left.width - right.width
Есть идеи? Спасибо
РЕДАКТИРОВАТЬ: Решено с небольшими изменениями в ответ ianhirschfeld .
HTML:
<div class="container">
<div class="left">Left</div>
<div class="right">RightRightRight</div>
<div class="center">Center center center center center center center</div>
</div>
CSS:
.container {
white-space: nowrap;
overflow: hidden;
}
.left {
float: left;
}
.center {
overflow: hidden;
}
.right {
float: right;
}