Как ограничить минимальную и максимальную ширину элемента?

У меня есть строка текста, вокруг которой я хочу нарисовать границы. На данный момент разметка выглядит так:

<div id="titleBox"><span id="titleName" class="truncate">Really really long long long title name</span></div>

Стиль выглядит так:

    #titleBox{
    margin-top: 10px;

}

#titleName{
    margin: 5px;
    height: 1.6em;
    width: auto;
    max-width: 15.385em;    
    padding: 0.369em;
    margin: 0.369em;
    line-height: 1.7;
    color: rgba(0,0,0,0.4); 
    background-color: rgba(204,204,204,0.4); 
    border: 3px solid rgba(255,255,255,0.14);
    font-size: 153.9%;
    -moz-border-radius: 5px; 
    -webkit-border-radius: 5px;     
}

.truncate {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -ms-text-overflow: ellipsis;        
    -o-text-overflow: ellipsis;
    -moz-binding: url('../templates/ellipsis.xml#ellipsis');
}

Эффект, который я хотел бы получить, заключается в том, что я хотел бы, чтобы стилизованное поле соответствовало ширине текста, если ширина не превышает определенный предел. Тогда я бы хотел, чтобы ширина была ограничена, и тогда должен был бы использоваться класс усечения.

Проблема только с использованием div заключается в том, что поле не переносится по ширине текста. Использование пролета помогает, но тогда оно не отображается как блок. Принудительное отображение его в виде блока представляет собой ту же проблему, что и оборачивание его в простой div. Использование комбинации div/span также не работает, потому что span игнорирует границы div, если текст слишком длинный.

Есть ли способ ограничить ширину текста, заставляя его усекаться и иметь стилизованный прямоугольник, окружающий текст?

1 ответ

Решение

Согласно моему комментарию, display:inline-block должен дать желаемый эффект. это не будет работать в

Другие вопросы по тегам