Creating rounded corners in IE7 / IE8

2019-01-27 17:44发布

问题:

I am creating a rounded corners tabs, that works fine in IE9, Mozilla and Chrome, but not in IE7/IE8.

Here is the code:

<div id="navbar">
<div id="holder">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About Us</a></li>
<li><a href="#">Contact Us</a></li>
<li><a href="#">News</a></li>
</ul>
</div>
</div>
#navbar {}
#holder {
border-bottom:1px solid #000;
overflow:hidden;
}

#navbar #holder ul {
margin:0;
padding:0;
list-style:none;
margin-top:15px;
}

#navbar #holder ul li { }
#navbar #holder ul li a {
text-decoration:none;
float:left;
margin-right:5px;
border:1px solid #000;
padding:15px;
text-align:center;
width:90px;
border-bottom:none;
display:block;
behavior:url(border-radius.htc);
border-radius:5px 5px 0 0;
}

#navbar #holder ul li a:hover {
background:#C09;
color:#fff;
}

Can you please let me know the code so that it works for IE7/IE8 as well?

回答1:

IE 7/8 do not support border-radius. I hear IE9 does though.

This site contains a hack for getting rounded borders in IE7/8 though: http://dimox.net/cross-browser-border-radius-rounded-corners/ . You'll need to download border-radius.htc and put the following code in your CSS:

.rounded-corners {
  behavior: url(http://yoursite.com/border-radius.htc);
}


回答2:

Use jquery corner , it will work on all major browser

http://jquery.malsup.com/corner/

You can even configure the corners the way you like!!



回答3:

There are following solutions :

  1. CSSPie (http://css3pie.com/ but its compressed js file is 40 KB in size)
  2. There is another solution using htc file for IE

        behavior: url(http://yoursite.com/border-radius.htc);
             (almost 40 KB of size)
    

    The guide can be found here http://dimox.net/cross-browser-border-radius-rounded-corners/

  3. Another solution that I personally recommend is :

         jquery.corner.js (http://jquery.malsup.com/corner/) 
    

    It's uncompressed js file is 10 KB in size.



回答4:

border radius supported ie-7, ie-8, ie-9 via javascript check this tutorial how to show border radius in ie http://davidwalsh.name/css-rounded-corners



回答5:

The Internet Explorer supports the CSS border-radius property natively not until version 9. For lower version of IE, check the jQuery plugin kvijayhari mentioned, jQuery Corner.