Tüm tarayıcıların aynı standartları desteklemesini beklemek neden gerçekçi değil? [kapalı]


12

İdeal olarak, tüm tarayıcılarda aynı sonucu veren aynı tarayıcıları ve aynı kodu destekleyen farklı tarayıcılarımız olacaktır.

Henüz olmadı. Sebepleri nelerdir?


1
"Aynı kod tüm tarayıcılarda aynı sonucu verir." - standartlar bunun için uygun değildir. "Aynı kod tahmin edilebilir şekilde tüm tarayıcılarda çalışır" daha yakın.
tdammers

1
Yıllardır bu soruyu soruyorum
billy.bob

1
Ne yazık ki hayır ... Uzun zamandır bunun için umuyorum.
Corv1nus

Sadece bir kez bildiğimiz gibi web kadar ölüdür gopher.
dmckee --- eski moderatör yavru kedi

Çünkü W3C, teknolojinin hızına ayak uyduramayan, çok çalışan bir kuruluş. Hepsi bukadar.
Ürdün

Yanıtlar:


18

Hayır, gerçekçi değil, çünkü teknik özellikler zaman zaman kafa karıştırıcı ve herkes diğerlerinden farklı bir şey anlıyor. Sonuçta biz sadece insanız. Bir ürünün tek bir sürümüne sahip tek bir tedarikçi olduğunda yalnızca tek bir gerçek standart olabilir.

Joel bu konuda Marslı Kulaklıklar adlı mükemmel bir makale yazdı .

Sanırım onu ​​burada teklif edeceğim, çünkü bu, farklı satıcılar sürece sürece bunu neden görmeyeceğimize dair en iyi açıklama:

Bu belgeler çok kafa karıştırıcı. Spesifikasyonlar, “Kardeş blok kutusu (yüzmeyen ve kesinlikle konumlandırılmayan) alıştırma kutusunu izlerse, giriş kutusu blok kutusunun ilk satır içi kutusu olur. Bir alıştırma, bir alıştırma ile başlayan veya kendisinin bir alıştırma olduğu bir blokta çalışamaz. ” Böyle bir şey okuduğumda, herkesin spesifikasyona nasıl uygun olduğunu merak ediyorum.

Ayrıca, piyasada rekabet ve evrim var. Örneğin, otomatik tamamlama kutularını ele alalım. Her büyük tarayıcı zaten bunlara sahiptir, ancak standart tanımlanmamıştır. W3C çok yavaş ve standart geldiğinde, vahşi doğada farklı davranışlara sahip 5 farklı uygulama var, rekabetçi olmak istiyorsanız desteklemeniz gerekiyor. Bu soruna bir diğer en önemli örnek, videoların yerleştirilmesidir.

Bununla birlikte: Çeşitli farklı tarayıcıları ve ortamları desteklemeniz gerektiği sürece, ayarlamalar yapmaya hazır olun.


11

Hayır, çünkü birçok spesifikasyondaki W3C, UA uygulayıcılarına (tarayıcı uygulayıcıları) bir yerlerin uygulanmasının sorumluluğunu verir. Bunu neden söylüyorum, çünkü makalelerimi genellikle doğrudan W3C spesifikasyonlarından yazıyorum ve bu durumları görüyorum. Örneğin W3C, tarayıcıların kullanıcının konumlarını paylaşma konusundaki rızasını alması gerektiğini ( Geolocation API aracılığıyla ), ancak bunu nasıl istemeleri gerektiğini söylemez. Bu, farklı tarayıcılarda farklı türlerde mesajların (açılır pencere, aşağı kaydırma vb.) Gösterilmesine neden olabilir.

Genel olarak şunu söyleyebiliriz:

Bazı çoğulcu gereksinim uygulamaları olduğu sürece , tarayıcılar arasında tutarlılığın sağlanması zordur .

Tutarlı tarayıcıları yalnızca W3C tarayıcı uygulayıcılarına ne yapmaları gerektiğini zorunlu olarak söylediğinde görebiliriz .


İyi olan, Saeed =) +1
Falcon

Teşekkürler @Falcon. Bu benim ikinci sorum. Ancak, o çok sayıda aşağı oy aldı ve silindi: D. Bence hepimiz biliyoruz ki, IE en standart dışı tarayıcı olduğunu.
Saeed Neamati

7

Açıkladığınız biçimde olmayacak.

Ancak; muhafazakar bir şekilde kod yazarsanız, tüm yeni tarayıcılarda güvenilir ve öngörülebilir şekilde çalışan bir kod yazmak fazla zaman almaz. Zaten son on yılda çok yol kat ettik - IE bile şu anda W3C önerilerinin büyük bir alt kümesini doğru bir şekilde uyguluyor, aslında tarayıcı agnostik web siteleri yapmak için yeterli.

Tabii ki, önerilerde olmayan şeyleri yapmak veya belirsiz bir şekilde belirtilen veya hala yanlış (veya hiç uygulanmayan) özellikleri kullanmak istiyorsanız, o zaman kendi başınasınız.


1

Yakında gerçekleşmesi son derece düşüktür - aslında, ne zaman olur / olursa, dünyanın ilerlediğinin güçlü bir işareti olduğunu ve sadece web tarayıcılarını artık umursamadığını söyleyebilirim. .

Sorun oldukça basit: tarayıcıların yapabileceği daha havalı şeyler için yeni standartlar yazma sınırının çoğu, mevcut standartlara uygunluk (hatta makul) eksikliğidir. Biraz farklı bir yönden baktığımızda, dakika tarayıcıları mevcut standartlara uyuyor (hatta uygunluğa makul bir şekilde yaklaşıyor), en azından birkaç kişinin düşünmeye başlayacağı neredeyse kesin "Ama eğer ... ve sonra iki şeyden birini yapacaklar: ya fikirlerini tek bir tarayıcıda uygulayacaklar ve sonra fikirlerini standartlaştırmaya çalışacaklar (diğer tarayıcılar uygulamadan hemen önce kaçınılmaz olarak) ya da henüz hiçbir tarayıcı uygulamadığı halde, bu davranış için bir standart yazmaya çalışın .

Sonuç olarak, tarayıcılar arasında standartların uygulanması, kaçınılmaz olarak, uyulması gereken yeni standartların icadının gerisinde kalmaktadır. Tarayıcıların hepsini yakalayabilmesinin tek yolu, insanların tarayıcıların yapması için yeni şeyler yazmayı / tasarlamayı bırakmasıdır.

Aynı zamanda, aşağı yukarı tersinin de doğru olduğunu belirtmek zorundayım: bu, tarayıcıların daha yakından uyumlu olduğu sürekli büyüyen bir standartlar kümesidir. Çok uzun zaman önce, herhangi bir tarayıcının Acid3 testinde aldığı en iyi puan 93/100 idi. Olduğu gibi, IE şu anda aldığı aynı puan ...


0

İdeal olarak, tüm tarayıcılarda aynı sonucu veren aynı tarayıcıları ve aynı kodu destekleyen farklı tarayıcılarımız olacaktır.

Bu, neden farklı tarayıcılara ihtiyacımız olduğu sorusunu gündeme getiriyor. Herkes temelde aynı şeyi yaparsa, o zaman herkes için bir tarayıcı yeterli olacaktır. Bu gerçekten ideal olurdu. Çabaların işe yaramaz bir şekilde kopyalanmasına ve tarayıcıya özgü kodlara artık gerek yok. Nihayet insanlar sağlam bir temel üzerine inşa etmeye başlayabilirler.

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.