IE'de “sınır yarıçapı” desteği


158

Internet Explorer'ın "sınır yarıçapı" CSS özniteliğini destekleyip desteklemeyeceğini / ne zaman destekleyeceğini bilen var mı?

Yanıtlar:


220

Evet! IE9 Ocak 2011'de piyasaya sürüldüğünde.

Diyelim ki dört tarafta da 15 piksel bile istiyorsun:

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

IE9 varsayılanı kullanır border-radius, bu yüzden kenarlık yarıçapı çağıran tüm stillerinize dahil ettiğinizden emin olun. Ardından siteniz IE9 için hazır olacaktır.

-moz-border-radiusFirefox, -webkit-border-radiusSafari ve Chrome içindir.

Ayrıca: IE kodlama yani 9 olduğunu beyan unutmayın:

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

Bazı tembel geliştiriciler var <meta http-equiv="X-UA-Compatible" content="IE=7" />. Bu etiket varsa, IE'de sınır yarıçapı hiçbir zaman çalışmaz.


7
Muhtemelen X-UA-Uyumlu meta etiketi kullanmıyorsanız, sadece IE9'da çalışmasını sağlamak için eklemenize gerek yoktur?
thepeer

72
Tarayıcı gerçek standardı destekliyorsa, satıcı önekli sürümü yerine bunu kullanacak şekilde, satıcı önek sürümlerini FIRST ve standart LAST koymalısınız.
Jason Berry

4
Meta etikete ihtiyacınız yok. Sadece dahil edildiyse ie7 öykünücüsünü değiştirmeniz gerekir. Aksi takdirde, endişelenme.
Kevin Florida

3
Geçerli IE9 beta 'sınır yarıçapı' FYI tek bir değer kullanarak düzgün çalışır. Gerçekten farklı olmalarını istemediğiniz sürece dört değerin tümü gerekli değildir.
mikemaccana

2
@ nailer: Köşeleri güncellediğiniz için teşekkür ederiz .. IE9'un ilk alfa vs ve beta vs 4 köşesinin tümünü açıkladı. Ben sadece en son ie9 RC indirdi ve bana bir değer beyan izin veriyor .. Bu ne zaman değişti emin değilim ..
Kevin Florida

46

Bu sorunun cevabı, bir yıl önce sorulduğundan beri değişti. (Bu soru şu anda Google sınır "yarıçapı ie" için en iyi sonuçlardan biridir.)

IE9 destekleyecektir border-radius.

Platform önizleme yok mevcut olan destekleri border-radius . Önizlemeyi (ve yayınlandığında IE9'u) çalıştırmak için Windows Vista veya Windows 7'ye ihtiyacınız olacaktır.



18

Geçici çözüm ve kullanışlı bir araç:

CSS3Pie , CSS3'ü IE 6 - 8'e uygulamak için .htc dosyalarını ve behavior özelliğini kullanır.

Modernizr , html öğenize sınıflar koyan, yeteneklerine göre farklı tarayıcılara farklı stil tanımları sunmanıza izin veren bir javascripttir.

Açıkçası, bu ikisi de daha fazla ek yük ekler, ancak IE9 ile sadece Vista / 7 üzerinde çalıştığımız için oldukça uzun süre sıkışmış olabiliriz. Ağustos 2010'dan itibaren Windows XP hala web istemci işletim sistemlerinin% 48'ini oluşturmaktadır.


2
CSS3 PIE, bunun için en kolay ve en az müdahaleci seçenek oldu.
Chris Rasco

12

IE8 için planlanmamıştır. Bkz CSS Uyumluluğu sayfasını .

Bunun ötesinde hiçbir plan yayınlanmadı. IE8'in Windows XP için son sürüm olacağı söylentileri var


12
Açıktır ki yanlışsınız, çünkü IE9'un CSS3'ü de desteklemesi gerekiyor ve IE'nin hiçbir yerde ölmediğini görmüyorum. Birisi pls IE öldürmek
Starx

10
IE8'in Windows XP için ... son sürüm olduğu ortaya çıkıyor.
M. Dudley

7

<!DOCTYPE html> Bu etiket olmadan sınır yarıçapı IE9'da çalışmaz, meta etiketlere gerek yoktur.



4

Use -ms-border-radius: 15px, css -ms- kullanan herhangi bir eleman IE ile uyumludur.



2

Kenarlık yarıçapı VE arka plan gradyanı desteği ne olacak? Evet IE9 her ikisini de ayrı ayrı desteklemektir, ancak ikisini karıştırırsanız gradyan yuvarlatılmış köşeden dışarı akar. Aşağıda kötü bir örnek için bir bağlantı ama ben de kendi test gördüm. Ekran görüntüsü alınmalı :(

Belki de asıl soru, IE'nin MS-FILTER tescilli bilgisayar korsanları olmadan CSS standartlarını ne zaman destekleyeceği.

http://frugalcoder.us/post/2010/09/15/ie9-corner-plus-gradient-fail.aspx


IE10 uygun CSS3 gradyanlarını destekleyecektir (geçerli IE10 geliştirici önizlemesi zaten -ms-linear-gradient üzerinden yapıyor). IE9'da sınır yarıçapına uyan degradeler istiyorsanız, SVG kullanmanız gerekir (harici bir SVG dosyası veya veri URI'sinde kodlanmış bir dosya) - bkz. Css3wizardry.com/2010/10/29/css-gradients-for- ie9 - ayrıca CSS3 PIE yakında bunu otomatikleştirecek, kullanılabilir bir test oluşturma var
lojjic

Hızlı bir düzeltme, onu başka bir öğeye sarmaktır. Üst öğeye aynı kenar yarıçapını verin ve taşmasını gizli olarak ayarlayın.
Senne

1

ÇÖZÜLDÜ - IE 10 ve 11'de kenarlık yarıçapını doğru oluşturmuyor

IE 10,11'de çalışmak için -ms-border-radius: veya border-radius: alamayanlar için Tüm kareyi oluşturur ve ardından şu adımları izleyin:

  1. IE tarayıcısının sağ üst tarafındaki dişli çarkı tıklayın
  2. Uyumluluk görünümü ayarlarını tıklayın
  3. Şimdi varsayılan olarak işaretlenmiş 2 kutunun işaretini kaldırın.

Kutuların resimdeki gibi işaretlenmediğinden emin olun

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.