Internet explorer IE 9、8、7中的边界半径问题
我已附上我用于我的网站的菜单的下图,除IE外,所有其他浏览器都呈现正确的输出: 即使在IE9中,悬停效果也应该是弯曲的,但它会产生矩形效果 Firefox、safari和chrome运行良好: Css 我正在寻找与firefox、chrome和safari相同的行为Internet explorer IE 9、8、7中的边界半径问题,internet-explorer,css,Internet Explorer,Css,我已附上我用于我的网站的菜单的下图,除IE外,所有其他浏览器都呈现正确的输出: 即使在IE9中,悬停效果也应该是弯曲的,但它会产生矩形效果 Firefox、safari和chrome运行良好: Css 我正在寻找与firefox、chrome和safari相同的行为 .class { border-style: solid; border-width: 2px; -moz-border-radius: 15px; -webkit-border-radius: 15px; borde
.class {
border-style: solid;
border-width: 2px;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
border-radius: 15px;
}
只是一个简单的例子试试看
.class {
border-style: solid;
border-width: 2px;
-moz-border-radius: 15px;
-webkit-border-radius: 15px;
border-radius: 15px;
}
举个简单的例子看看这个项目。它将在IE6到IE9中提供各种CSS3功能;包括圆角。看看这个项目。它将在IE6到IE9中提供各种CSS3功能;包括圆角。Internet Explorer 9中的
边框半径不会剪裁Internet Explorer中的渐变过滤器。我能想到的唯一解决方案是使用一个内部
元素并应用渐变:
<nav>
<ul>
<li>
<div class="gradient">Home</div>
</li>
</ul>
</nav>
-
家
将边界半径
应用于
元素,并将渐变应用于
。这应该给出正确的结果
正如Salman A提到的,唯一的其他选择是,它解决了这个问题,并且在IE的旧版本中实现了边界半径。我在几个项目中使用了它,效果非常好。Internet Explorer中的渐变过滤器不会被Internet Explorer 9中的边界半径截断。我能想到的唯一解决方案是使用一个内部
元素并应用渐变:
<nav>
<ul>
<li>
<div class="gradient">Home</div>
</li>
</ul>
</nav>
-
家
将边界半径
应用于
元素,并将渐变应用于
。这应该给出正确的结果
正如Salman A所提到的,唯一的另一个选择是,它可以解决这个问题,并且在旧版IE中实现边界半径。我在几个项目中使用了它,效果非常好。Twitter Bootstrap做了以下工作来解决这个问题:
filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)代码>Twitter引导程序执行以下操作来解决此问题:
filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)
border radius
是css3时代之前的浏览器,而IE6/7/8是css3时代之前的浏览器。对不起,我忘了添加我正在使用的css,我刚刚上传了它border radius
是css3时代之前的浏览器,而IE6/7/8是css3时代之前的浏览器。对不起,我忘了添加我正在使用的css,我刚刚上传了我忘记添加我正在使用的css,我刚刚上传了我忘记添加我正在使用的css,我刚刚上传了我忘记添加我正在使用的css,我刚刚上传了它,我只是查看了你的CSS,我确信CSS3派将使线性渐变
和边界半径
属性在旧版本的IE中工作。在IE中打开项目主页上的演示,看看它是否能给你预期的结果。+1 CSS3派非常适合这种情况,并将解决您的IE7/8问题。(不确定您遇到的IE9问题;这完全是另一个问题)对不起,我忘记添加我正在使用的css,我刚刚上传了它,我只是查看了你的CSS,我确信CSS3派将使线性渐变
和边界半径
属性在旧版本的IE中工作。在IE中打开项目主页上的演示,看看它是否能给你预期的结果。+1 CSS3派非常适合这种情况,并将解决您的IE7/8问题。(不确定你遇到的IE9问题;这完全是一个独立的问题)这是IE中的一个bug吗?我们是否总是需要使用黑客来解决IE问题,为什么他们不把问题简化为chrome..嗯,听起来可能是IE9 bug。其他浏览器在过去也遇到过这种边界半径的问题(例如Firefox 3.0没有用边界半径剪裁
标记的角),因此如果这是IE的错误,那么IE没有从其他浏览器的错误中吸取教训是令人沮丧的。@Spudley:我相信这只是因为过滤器已经过时了。它们似乎不会随着IE的每个版本而更新,这也可以解释为什么alpha问题从未通过其他过滤器得到解决。过滤器只会看到一个元素,并重新绘制一个矩形来代替该元素(类似于二进制行为的工作方式)。如果过滤器在IE 11中被弃用甚至失效,我也不会感到惊讶。@AndyE-这也是我的第一个想法,但问题出在IE9中,IE9没有使用过滤器样式。@Spudley:你说得对,根据文档,它们被弃用:-),-ms filter
仍然需要用于IE 9中的渐变,因为它本身不支持线性渐变。IE 10有。这是IE中的一个bug吗?我们总是要用黑客来解决IE的问题,为什么他们不把它变得像chrome一样简单..嗯,听起来可能是IE9的bug。其他浏览器在过去也遇到过这种边界半径的问题(例如Firefox 3.0没有用边界半径剪裁
标记的角),因此如果这是IE的错误,那么IE没有从其他浏览器的错误中吸取教训是令人沮丧的。@Spudley:我相信这只是因为过滤器已经过时了。它们似乎不会随着IE的每个版本而更新,这也可以解释为什么alpha问题从未通过其他过滤器得到解决。过滤器只会看到一个元素,并重新绘制一个矩形来代替该元素(类似于二进制行为的工作方式)。如果过滤器在IE 11中被弃用甚至失效,我也不会感到惊讶。@AndyE-这也是我的第一个想法,但问题出在IE9中,IE9没有使用过滤器样式。@Spudley:你说得对,它们是dep