Вопрос по css – Кто-нибудь знает, почему это: после CSS не работает в IE9?

7

Эта кнопка отправки должен быть закруглен с левой стороны и заострен с правой стороны. Он работает в браузерах, отличных от IE, но в IE9 он не работает.

Если я смотрю на стили в инструментах разработчика, то .flat-button: after rule все перечеркнуло, как будто оно чем-то заменено. Какие?

<code><button type="submit" class="flat-button">Submit</button>
<style>
.flat-button {
    float: left;
    position: relative;
    border-top-left-radius: 5px;
    -moz-border-top-left-radius: 5px;
    -webkit-border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    -moz-border-bottom-left-radius: 5px;
    -webkit-border-bottom-left-radius: 5px;
    border: none;
    padding: 0 12px;
    margin: 0 3px 3px 0;
    outline: none;
    cursor: pointer;
    color: white;
    font-family:'Trebuchet MS', Arial, helvetica, Sans-Serif;
    font-size: 14px;
    font-weight: bold;
    font-style: italic;
    text-decoration: none;
    border-collapse: separate;
    height: 26px;
    line-height: 26px;
    background: #5191cd;
}
.flat-button:hover {
    background: #1c3f95;
}
.flat-button:after {
    position: absolute;
    content: ' ';
    height: 0;
    width: 0;
    left: 100%;
    border: 13px solid transparent;
    border-left-color: #5191cd;
}
.flat-button:hover:after {
    border-left-color: #1c3f95;
}
</style>
</code>
Крис, чтобы ответить на ваш вопрос, вы можете отправить форму, нажав на ссылку, используя JS. Я знаю, почему вы предпочитаете использовать кнопку, но в IE возникают проблемы с поддержкой кнопок. Я не знаю хорошего обходного пути, кроме как использовать JS для прорисовки этого конкретного недостатка. Увидетьjsfiddle.net/BWC9q/8 для чего-то близкого, но не совсем. Jared Farrish
Это работает, если вы измените<button> в<a>так что это как-то связано сbutton.. thirtydot
В поддержку предложения @ тридцатки, да,using a a instead of button seems to work, BoltClock может или не может согласиться. Jared Farrish
Это полезно знать, но я хотел бы иметь возможность использовать его для отправки формы без JavaScript. Или есть способ сделать это с помощью якорей как-то? Chris

Ваш Ответ

1   ответ
20

Поработав некоторое время, я нашел простое исправление для IE9.

http://jsfiddle.net/thirtydot/BWC9q/10/

Все, что вам нужно, это добавитьoverflow: visible в.flat-button.

Я просто продолжал пробовать вещи. В конце концов я увидел, чтоbutton казалось, имелoverflow: hiddenвот тогда я и попробовалoverflow: visible и это сработало.
Очень круто; Удивительно, как метод спагетти может работать. Я туда не попал.
Тридцать, когда кто-то спрашивает, являетесь ли вы богом, вы говорите "ДА"!
Хорошая работа, тридцать. как ты это понял?
ты ... бог? Chris

Похожие вопросы