Проблема CSS: комбинация «text-align: center» и «min-width» не работает в режиме сжатия IE 7 / IE 8 - PullRequest
5 голосов
/ 10 февраля 2010

Вот мой HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<style type="text/css">
    input.navbutton
    {
        text-align: center;
        min-width: 100px;
    }
</style>
</head>
<body>
    <input type="submit" class="navbutton " value="Next" />
</body>
</html>

В IE 7 это выглядит примерно так:

alt text

Но в Firefox это выглядит так:

alt text

Как видите, текст в IE 7 не по центру.

Есть идеи, как это решить?

Ответы [ 7 ]

2 голосов
/ 10 февраля 2010

min-width для кнопки уже не работает в IE6 / 7 (она не будет расширять кнопку вообще, когда текст больше, как вы, вероятно, ожидаете) Замени его на width и живи с ним.

1 голос
/ 01 октября 2015

Мне потребовалось время, чтобы понять это, но я наконец-то понял. Необходимо использовать комбинацию из трех свойств:

input.navbutton {
    min-width: 100px;
    overflow: visible;
    line-height: 120%;
}

Ваш текст будет центрирован автоматически. line-height можно исключить, если вы выравниваете текст по левому или правому краю. См. этот jsfiddle для полного примера.

Example shown in IE7

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

Хороший жук, ты поймал там einarq ..

Это может быть связано с ошибкой минимальной ширины: http://social.msdn.microsoft.com/Forums/en/iewebdevelopment/thread/e54188ad-cdad-4168-bbf9-2d0b5271676d

Единственный возможный обходной путь, который я вижу, - это сбросить минимальную ширину и добавить левый и правый отступы.

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

Попробуйте это:

input.navbutton
{
    text-align: center;
    min-width: 100px;
    align:center;
}

В IE (старый), align также влияет на текст.

0 голосов
/ 23 декабря 2018

это была большая проблема для меня, но у меня есть решение

input.navbutton
{
    text-align: center;
    min-width: 100px;
    margin: auto;
}

добавление авто вернет текст на место.

у меня это работает на IE

0 голосов
/ 07 октября 2011

попробуйте изменить свой CSS на это:

    input.navbutton
    {
            text-align: center;
            min-width: 100px;
    }
0 голосов
/ 11 февраля 2010

Попробуйте margin: 0 auto; в вашем CSS.Я знаю, что это центрирует текст для тегов <div>, но я не знаю о кнопках.

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