【问题标题】:Set select dropdown style to default将选择下拉样式设置为默认值
【发布时间】:2014-08-25 16:47:39
【问题描述】:

我在选择元素中设置了边框属性。

select {
   border: 1px solid #0f0;
}

IE7 不支持选择样式。所以现在我的要求是从所有 IE 版本(7、8、9 ...)中删除该样式并将下拉菜单设为默认。但是这个属性在 IE8 上工作。对此有任何纯 css 解决方案。

注意:我在 html 标签中有特定的 IE 类。我可以像

一样在 css 中使用它吗
.ie select {}

【问题讨论】:

  • 要针对不同版本的 IE,您可以使用 Conditionnal cmets(但它不仅仅是 CSS,因为您也必须修改 HTML)或 CSS hacks。话虽如此,至少要问一个问题是否仍应支持此类旧版本的 IE,这可能很有趣。
  • 就我而言,我希望所有 IE 版本的默认下拉菜单和所有其他浏览器上的红色边框。

标签: html css internet-explorer


【解决方案1】:

您可以使用以下 css hack 来指定 IE 受限功能。希望这些可以帮助你!为所有浏览器设置红色边框,为IE浏览器设置ne颜色。

/* IE 11(特定)*/

@media all and (-ms-high-contrast:none) {
  #selector {
    color: #FFFFFF;
  }
}

/* IE 10(特定)*/

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  #selector {
    color: #FFFFFF;
  }
}

/* IE 9(特定)*/

#selector {
  color: #000000; /* Ingeneral, for all browsers */
  color: #FFFFFF \0/IE9; /* Only for IE 9 */
}

/* IE 8(特定)*/

@media \0screen {
  #selector {
    color: #FFFFFF;
  }
}

/* IE 7(特定及以下版本) */

#selector {
  *color: #FFFFFF;
}

干杯:)

【讨论】:

  • 要删除边框,您可以使用下面的 css。 border: none medium;.
  • 我不想要任何边框。只有 IE 提供的默认值。
  • 如果很难恢复,则作为默认样式。尽管如此,请尝试使用以下内容并获得一些默认值。 ** select { border-bottom-color: #ccc; border-right-color: #ccc; border-width: 1px; box-shadow: inset 1px 1px 0px 0px #000; } **
  • 一旦默认浏览器样式被编辑,要恢复它就变得非常困难,甚至有时是不可能的!我认为box-shadow 可能不起作用!所以尝试通过黑客使用,可能会工作!
【解决方案2】:

IE 有特定的 CSS hack,如果你愿意,可以试试:

CSS

select {
         border: 2px solid #0f0; /* for all browsers */
         border: 2px solid #000; /* IE8 and below */
         *border: 2px solid #000; /* IE7 and below  */
         _border: 2px solid #000; /* IE6 and below  */
}

破解您的 CSS 似乎是让您的样式跨浏览器类型工作的快速解决方案,但是,您确实应该在 HTML 中使用条件语句。例如

<!--[if lte IE 9]>
Your IE8 and below HTML code here.
Perhaps importing a specific style sheet.
<![endif]-->

【讨论】:

  • 默认的IE风格边框。
猜你喜欢
  • 2021-08-10
  • 1970-01-01
  • 2014-12-08
  • 2021-02-16
  • 2016-04-10
  • 1970-01-01
  • 1970-01-01
  • 2023-03-04
  • 1970-01-01
相关资源
最近更新 更多