2010-11-09 6 views
9

Chciałbym wiedzieć, jak zrobić zaokrąglenie granicy w IE8. UżywamJak zrobić zaokrągloną granicę w IE8 z CSS?

-moz-border-radius:4px; 
-webkit-border-radius:4px; 

dla Mozilli i Safari.

+0

Oto jak można to zrobić z czystym CSS i bez JavaScript. To pokaz gongów i łatwe do złamania, ale nie mniej ważne. [Czyste zaokrąglone rogi CSS bez obrazów i javascript] (http://www.worthapost.com/articles/pure-css-rounded-corners-without-images-and-javascript) –

Odpowiedz

6

Istnieje wtyczka jQuery do tego. http://jquery.malsup.com/corner/

+1

Nie zapytał, jak to zrobić bez CSS lub z javascript. – Rob

+3

@Rob: inne odpowiedzi już wyjaśniły, że nie jest możliwe wdrożenie w czystym CSS dla IE8. –

+0

@Matt Ball dzięki za twoją drogę. – kst

1

Nie możesz. IE nie obsługuje nowoczesnych standardów i praktyk, aw szczególności nie ma takiej właściwości CSS w IE8.

+0

Ty ** możesz ** zrobić to w CSS , to po prostu ogromny ból w szyi (zdecydowanie za dużo znaczników div). Możesz również użyć obrazów CSS i obrazów z zaokrąglonymi rogami. –

0

W IE9 można użyć obramowania o promieniu.

Dla starszych wersji IE istnieją biblioteki javascript, które zrobią to za Ciebie. Nie możesz tego zrobić wyłącznie za pomocą CSS. Przynajmniej będziesz potrzebował obrazów tła.

+0

Ty ** możesz ** robić to czysto w CSS, to tylko ogromny hack i ból w szyi (zdecydowanie za dużo znaczników div). Możesz również użyć obrazów CSS i obrazów z zaokrąglonymi rogami. –

+0

@rockinthesixstring - naprawdę? Zgaduję, że jeśli dołożysz wystarczającą ilość elementów div, z blokiem i kolorem tła ... – Moshe

+0

Widziałem, jak to się stało ... To brutalne do wdrożenia i łatwe do złamania. –

3

Pobierz https://code.google.com/p/curved-corner/ i dołącz do projektu. Następnie użyj następujących css, aby mieć zaokrąglony róg.

Na przykład:

.somediv{ 
    -webkit-border-radius:4px;  /* older webkit based browsers */ 
    -khtml-border-radius:4px;   /* older khtml based browsers */ 
    -moz-border-radius:4px;   /* older firefox */ 
    border-radius:4px;    /* standard */ 
    behavior: url(border-radius.htc); /* IE 6-8 */ 
} 

adres URL do pliku jest w stosunku do pliku HTML, który ładuje CSS. A więc różni się to od zachowania background: url (...), które jest względne w stosunku do pliku CSS. Więcej szczegółów here

0

Możesz użyć do tego CSIE3 PIE. Jest łatwy do wdrożenia. Wystarczy pobrać go tutaj: http://css3pie.com/download/ i wyodrębnić jego zawartość. Następnie, na arkuszu stylów, po prostu umieść behavior:url(css3pie/PIE.htc); wraz z kodami css każdego elementu, który używa granicy promienia.

Na przykład:

.samplediv{ 
    behavior:url(css3pie/PIE.htc); 
    -webkit-border-radius:10px; 
    -khtml-border-radius:10px;  
    -moz-border-radius:10px;   
    border-radius:10px;    
}