IE 7/8中选项卡上的CSS圆角

JNP*_*NPW 2 html javascript css internet-explorer rounded-corners

我正在使用jQuery来获取UI中选项卡的圆角.我的问题是它在firefox和Ie9中运行良好但在IE7和IE8中失败(选项卡看起来像一个正方形.这是一个问题给每个人还是有修复?

<div id="fig">
        <div id="fig-tabs">
          <strong class="tab-current">1st tab</strong> <a href="" class="tab">2nd tab</a> <a href="" class="tab">3rd tab</a>
        </div>
...</div>
Run Code Online (Sandbox Code Playgroud)

和css是,

#fig-tabs { }

strong.tab-current
{
    background-color: #FFF;
    padding: 3px 8px 7px 8px;
    -moz-border-radius: 4px 4px 0px 0px;
    border-radius: 4px 4px 0px 0px;
    text-decoration: none;
}

a.tab
{
    background-color: #999;
    padding: 3px 8px 2px 8px;
    -moz-border-radius: 4px 4px 0px 0px;
    border-radius: 4px 4px 0px 0px;
    text-decoration: none;
}

a.tab:hover { background-color: #9ffff; }
Run Code Online (Sandbox Code Playgroud)

sec*_*ula 6

首先,我要说你的问题是你正在编写的代码使用<canvas>旧版本的Internet Explorer不支持的标记/元素.你可以用什么

为什么不使用css3 border-radius属性来设置舍入.这些仍然无法在Internet Explorer中工作,但更好,更容易编码.真的在这个时代,这种事情应该使用css3.有兼容性库可以在9之前用于IE.

如果您真的想在旧浏览器版本中使用圆角,则需要使用预先创建的图像.

编辑:正如另一个答案所述,你可以使用互联网资源管理器画布库,但你需要改变你的getContext调用,因为你的画布标签是动态生成的

var el = document.createElement('canvas');
G_vmlCanvasManager.initElement(el);
var ctx = el.getContext('2d');
Run Code Online (Sandbox Code Playgroud)

EDIT2:现在你的问题是IE 7/8中也不支持css3属性.尝试使用库(建议http://css3pie.com/之一的评论将该支持添加到旧版浏览器中