Pytanie w sprawie html, css3, css – Promień graniczny nie działa w IE9

0

Border Radius nie działa w IE9. Następujący atrybut użyłem w moim projekcie. a także dodam również plik .HTC

-moz-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
-webkit-box-shadow: 0 1px 3px rgba(0,0,0,0.5);
-moz-border-radius: 5px;
-webkit-border-radius: 5px;
border-radius: 5px;
behavior: url(Styles/border-radius.htc); 
HTC nie ma znaczenia dla IE9; potrzebujesz go tylko dla IE8 lub niższego. Obsługuje IE9border-radius w porządku. Nie wiem, dlaczego to nie działa dla ciebie; w pytaniu nie ma wystarczającej ilości informacji, aby go zdiagnozować. Musisz zademonstrować rzeczywisty problem. Jeden punkt: jeśli zamierzasz używać HTC do obsługi IE7 / 8, powinieneś rozważyćCSS3Pie; jest lepszy niż ten, którego używasz. SDC
promień w IE działa, może się mylić z kodem, który możesz przesłać, możesz użyć: PasteBin lub inna strona do przesłania kodu, miłego dnia. Blanktext
IE9 obsługuje właściwość border-radius, po sprawdzeniu trybu przeglądarki i.e.Browser mode: IE9 i Document mode: IE9 Valli69

Twoja odpowiedź

9   odpowiedzi
0

Używanie CSS Pie ->http://css3pie.com/

Umożliwi to normalne określenie promienia granicznego, a następnie włączenie skryptu pie.htc do css. To w magiczny sposób działa w IE6. Spójrz na to!

Działa to również z innymi właściwościami CSS3, takimi jak gradienty tła.

Możesz także spróbować dodać to do swojej głowy ->

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

Powodzenia!

4

Posługiwać się

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />

 <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> wydawało się działać dla mnie. Matt Fricker
2

Musisz umieścić to w nagłówku HTML

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

Odpowiedź odkryta tutajie9 promień granicy

Kontynuacja: doświadczyłem tego samego problemu, co OP, aletylko gdyborder-radius jest zdefiniowany w wewnętrznym arkuszu stylów (tj. w obrębie<style> tag w<head>). W przeciwieństwie do tego, jeśli zdefiniujęborder-radius w zewnętrznym arkuszu stylów (tj. użyj<link> tag w<head> aby dołączyć plik .css), to działa bez potrzeby<meta http-equiv="X-UA-Compatible" content="IE=edge" /> etykietka. Pokoloruj mnie ponownie zakłopotany! Mike Finch
Doświadczyłem tego samego problemu, co PO; style takie jakborder-radius a inne nie działałyby w Internet Explorerze 11, ale działałyby w innych przeglądarkach, takich jak Firefox. Dodawanie<meta http-equiv="X-UA-Compatible" content="IE=edge" /> tag sugerowany przez @dockeryZ pomógłborder-radius styl do pracy. Ten metatag wydaje się być niezbędnyborder-radius. Jak wspomniałem w innym komentarzu,<!DOCTYPE html> deklaracja sugerowana przez @ Ags1 nie pomogłaborder-radius, chociaż pomagało w innych stylach. Mike Finch
3

ale mi nie pomógł. Moje rozwiązanie polegało na dodaniu deklaracji dokumentu HTML 5 do strony:

<! DOCTYPE html>

Inne deklaracje HTML doctype też mogą działać - moim problemem było generowanie stron bez deklaracji doctype.

Kontynuacja: doświadczyłem tego samego problemu, co OP, aletylko gdyborder-radius jest zdefiniowany w wewnętrznym arkuszu stylów (tj. w obrębie<style> tag w<head>). W przeciwieństwie do tego, jeśli zdefiniujęborder-radius w zewnętrznym arkuszu stylów (tj. użyj<link> tag w<head> aby dołączyć plik .css), to działa bez potrzeby<!DOCTYPE html> deklaracja. Pokoloruj mnie zakłopotany. Mike Finch
Doświadczyłem tego samego problemu, co PO; style takie jakborder-radius a inne nie działałyby w Internet Explorerze 11, ale działałyby w innych przeglądarkach, takich jak Firefox. Dodawanie<!DOCTYPE html>  deklaracja pomogła niektórym stylom rozpocząć pracę w IE11. Aleborder-radius nadal nie działa. Mike Finch
0

co dołączasz lub co piszesz, promień graniczny nie działa w ie9. Zmiana trybu przeglądarki lub trybu dokumentu nigdy nie jest rozwiązaniem, ponieważ jest po stronie klienta. Obawiam się więc, że mój przyjaciel nie ma wiarygodnego sposobu na poprawne działanie promienia granicznego w ie9, chyba że skorzystasz z javascript.

5
.myclass {
 border-style: solid;
 border-width: 2px;
 -moz-border-radius: 15px;
 -webkit-border-radius: 15px;
 border-radius: 15px;
}

więc upewnij się, że umieściłeś go we wszystkich stylach, nazywając promień obramowania. Wtedy Twoja strona będzie gotowa na IE9.

-moz-border-radius is for Firefox, -webkit-border-radius is for Safari and Chrome.

Ponadto: nie zapomnij zadeklarować, że kodowanie IE to ie9:

<meta http-equiv="X-UA-Compatible" content="IE=9" />

Niektórzy leniwi deweloperzy mają<meta http-equiv="X-UA-Compatible" content="IE=7" />. Jeśli ten znacznik istnieje, promień graniczny nigdy nie będzie działał w IE.

-moz- prefiks jest tylko dlafirefox 3.6 i niższy, nie możesz tego pisać w dzisiejszych czasach Vladimir Starkov
To działało dla mnie. Wielkie dzięki. santosh kumar patro
0

tj. -7, tj. -8, tj. -9 przez javascript sprawdź ten samouczek, jak pokazać promień obramowania w np.http://davidwalsh.name/css-rounded-corners

0

progid: DXImageTransform.Microsoft.gradient (startColorstr = '######', endColorstr = '######', GradientType = 0), po prostu skomentuj ten filtr.

0

border-radius.htc złamał normalny promień granicy w ie9, dołącz plik border-radius.htc w np. wersjach poniżej 9 zconditional comments

Powiązane pytania