Создание расширяемой кнопки в HTML - PullRequest
2 голосов
/ 09 декабря 2008

Мне нужно сделать кнопки «ОК» и «Отмена» в моем HTML, и я бы хотел, чтобы они были фиксированной ширины, чтобы обе кнопки имели одинаковый размер. Например, вот так:

<style>
button.ok_cancel {
    width: 50px;
    background-color: #4274af;
    font-size: 9px;
    line-height: 12px;
    color: #fff;
    cursor: pointer;
    text-transform: uppercase;
    padding: 1px;
    border: 0px;
    margin: 0 0 0 5px;
    text-align: center;
    letter-spacing: 1px;
}
</style>

<button class="ok_cancel" onclick="do_cancel()">Cancel</button>

Но теперь я локализую текст, и перевод "Отмена" может быть слишком широким для кнопки. Я хочу, чтобы кнопка имела фиксированную ширину 50 пикселей, если строка подходит, но чтобы она расширялась по ширине, если строка шире. Для сохранения внешнего вида кнопки будет использоваться фиксированное количество боковых отступов.

Я знаю, что, вероятно, не могу сделать это с чистым CSS, но какой самый простой HTML, который я могу использовать, даст мне нужный эффект?

Ответы [ 2 ]

3 голосов
/ 10 декабря 2008

Я работал с двухдневного ответа и в итоге получил:

/* Browser hack! This is for everyone: */
button {
    display: inline;
    cursor: pointer;
    padding: 6px 6px;
    width: 50px;
    overflow: visible;
}
/* and this is for non-IE browsers: */
html>body button {
    min-width: 50px;
    width: auto;
}

IE хочет, чтобы указанная ширина и видимое переполнение были видны, другие браузеры хотели бы, чтобы ширина и ширина были автоматически. CSS-хак позволяет IE увидеть один набор свойств, а другой браузер - другой набор.

0 голосов
/ 09 декабря 2008

Не уверен, но:

кнопка {min-width: 50px; ширина: авто; }

LMK, если это работает, оно должно работать, пока оно не всплывает.

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