IE'de çalışmayan eleman için başlangıç ​​genişliğini kullan


107

Kabına kanvas ve lejant ekleyen bir grafik eklentim var <table>. Bu eklenti de tablesahip olmadığı için widthtanımlandığı gibidir ve benim CSS benim eklenti yerleştirilmiş olur ki kap içinde bir tablo için bir genişlik vardır.

Bu nedenle, yeni div CSS'den miras table{ width: 100%}alıyor ve yanlış işliyor.

Kullanmayı denedim width: initial;, Chrome'da iyi görünüyor ama IE, tarayıcı uyumluluğunu kontrol etmekten hoşlanmıyor

Herhangi bir ortamda çalışması gerektiğinden, komut dosyasında / eklentide bir satır içi CSS'yi değiştirmeyi / zorlamayı kabul ediyorum.

Buradaki en iyi çözüm nedir?


Sadece minimum bir genişlik ayarlamayı denediniz mi? Çalışıyor mu?
BuddhistBeast

@BuddhistBeast, bunu düşünmedim! Ama şimdi denedim ve Chrome'da da çalışmadı.
Rikard

Yanıtlar:


177

Dediğin gibi, genellikle width: autobenzer bir etkiye sahip olacak. Kurallara sahip olmak:

.my-selector {
    width: auto;
    width: initial;
}

initialDestekleniyorsa veya autobaşka türlü kullanılmasına neden olmalıdır .


3
Bu benim sorunumu çözdü. Teşekkürler.
dchayka

2
Bana bir saat kazandırdı. Teşekkürler.
Skitterm

2
Bir not olarak, initial olan geçerli bir özellik değeri ( developer.mozilla.org/en-US/docs/Web/CSS/initial ). Ancak (önceki bağlantıda "Tarayıcı uyumluluğu" na kaydırırsanız), hiçbir IE sürümü bunu desteklemez.
gtramontina

4
bu bir geri dönüş olarak bilinir ve CSS'de çok yaygın bir kodlama modelidir. Ayrıca, kullanılarak width: autoyalnızca olmaz benzer bir etki, ancak olacaktır aynı için, etkisi autoolan başlangıç değeri olarak tanımlanır için widthözelliği.
chharvey

6

width: auto;Satır içi, komut dosyası içinde kullanmak Chrome, FIrefox ve IE 11'deki sorunu çözer. Daha iyi bir yol olup olmadığından emin değilim.

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.