Зачем отображать разные цвета градиента в IE, но отлично работает на Firefox и Chrome? - PullRequest
0 голосов
/ 29 марта 2012

Я работаю над одним из проектов с открытым исходным кодом.Я сталкиваюсь со странной проблемой.Когда я открываю сайт в Firefox или Chrome, он отображает ожидаемый цвет, но в IE он не отображается в этом цвете (он показывает очень светлый цвет).Я предполагаю, что это происходит из-за того, что я использую градиент, который IE не может правильно интерпретировать.Вот градиентный CSS-код:

#mainmenu {
  #css3_backgroundLinearGradient({
    'angle': 'top',
    'colors': [
      {'color': '#77D3F8', 'position': '0%'},
      {'color': '#3FA4D8', 'position': '100%'}
    ]
  })
  box-shadow: 0px 1px 2px $theme.linkColor;
}

Когда я делаю источник просмотра на веб-странице, я также вижу строку, например:

  <div class="gradientfilterIE"></div>.   

Я не уверен, является ли эта строкапреступник?Но полный исходный код проекта с открытым исходным кодом не имеет этой строки с gradientfilterIE.Я не уверен, что эта строка вызывает проблему, и откуда она берется?

Мне нужно ваше экспертное мнение, почему я вижу разные цвета градиента в IE, но отлично работает в Firefox и Chrome.*

Установка этого действительно решила мою проблему:

#mainmenu .gradientfilterIE {
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#77D3F8',     endColorstr='#3FA4D8',GradientType=0 );
}

Требуется ли filter: progid:DXImageTransform.Microsoft.gradient только для IE?Потому что на Firefox и Chrome без этого он тоже отлично работает.

1 Ответ

0 голосов
/ 29 марта 2012

Градиенты работают только в современных браузерах, но не в IE, но тот CSS, который вы показываете, недопустим.

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