Странные плавающие и отступы в IE7 - PullRequest
1 голос
/ 17 сентября 2011

У меня есть этот упрощенный код:

<div class="container">
    <input type="submit" name="submit" class="submit" value="Sign Up">
</div>

И CSS для него:

input.submit{
    padding-left: 40px;
    padding-right: 40px;
    float:right;
}
.container{
    background-color: #AAA;
    float:right;
    padding: 50px;
}

Я ожидаю, что div обернет вокруг кнопки ввода, сместится вправо иего размер равен размеру кнопки + отступ (50 пикселей).В других браузерах это работает отлично, но в IE7 происходят 2 странные вещи:

  1. Ширина div распространяется на всю веб-страницу.Если я удалю float: right из CSS файла input.submit, то размер div будет правильным.
  2. Ширина кнопки ввода также намного больше, чем когда кнопка отображается в других браузерах.

Я использую этот тип документа:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

Кто-нибудь знает, почему возникают эти проблемы и как их решить?

1 Ответ

1 голос
/ 17 сентября 2011

Не понимаю, зачем вам нужно float: right на input.submit, так что просто удалите его.Если вам нужна какая-то причина, вам придется показать мне, почему - возможно, есть обходной путь.

Чтобы устранить вторую проблему, добавьте overflow: visible к input.submit.

После этих двух изменений в IE7 и IE9 он выглядит практически одинаково: http://jsfiddle.net/33vmm/

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