Как ограничить минимальную и максимальную ширину элемента? - PullRequest
2 голосов
/ 03 февраля 2010

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

<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 Ответ

1 голос
/ 05 февраля 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...