W3C arama motorları için önemli bir etkendir. Sitenizde çok fazla W3C hatası varsa bu hataları düzeltmeniz SEO açısından oldukça önemlidir.
W3C Nedir?
World Wide Web Consortium kısaca W3C, dünya çapında web tasarımcıları ve yazılımcılarının sitelerinde dikkat etmeleri gereken web standartları belirler. Bu standartlara uygun hareket etmek hem düzgün kodlama için hemde SEO için önemlidir.
# W3C standartları Google, Bing ve Yandex gibi arama motorları için dikkat edilen önemli bir etkendir.
Birçok sitede karşılaşılan bazı W3C hataları ve çözümleri.
Attribute “<” is not serializable as XML 1.0.
Hatalı Örnek Kullanım
1 | <a href='http://siteadresi.com/'</a>İçerik/a> |
Hatanın Çözümü
Yukarıdaki linkte a etiketi 2 kere kapatılmış ve < işareti unutulmuş, a etiketlerinden hatalı olanı kaldırarak bu sorunu düzeltebilirsiniz.
The “type” attribute for the “style”
Örnek Hatalar:
# The “type” attribute for the “style” element is not needed and should be omitted.
# Warning: The type attribute for the style element is not needed and should be omitted.
Hatalı Örnek Kullanım
1 | <style type='text/css'> .ornek {color:#ffffff}</style> |
Hatanın Çözümü
Satır için CSS kullanımlarında type=’text/css’ kodu gerekli değildir, bu kodu kaldırıp sadece <style> .ornek {color:#ffffff}</style> şeklinde kullanım yaparak sorunu düzeltebilirsiniz.
<div class=”entry” id=”entry-thumb”>
Örnek Hata:
# The first occurrence of ID “entry-thumb” was here.
Hatalı Örnek Kullanım
1 | <div class="entry" id="entry-thumb"> |
Hatanın Çözümü
Burda bize id=”entry-thumb” kodunun sayfa içerisinde birçok farklı yerde kullandığımızı söylüyor. Sayfanızda id kullanımlarında aynı kodu birden fazla kullanmamanız gerekir. Aynı kodu birden fazla kullanmak isterseniz id yerine class sınıfını kullanın.
Mismatch between Public and System
Örnek Hatalar:
# Mismatch between Public and System identifiers in the DOCTYPE declaration
# This document uses an inconsistent DOCTYPE declaration. The System Identifier http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd declares the XHTML 1.0 Transitional document type, but the associated Public Identifier -//W3C//DTD XHTML 1.0 Transitional//tr-TR does not match this document type.
# The recommended Public Identifier for http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd is -//W3C//DTD XHTML 1.0 Transitional//EN.
# Warning Unable to Determine Parse Mode!
# The validator can process documents either as XML (for document types such as XHTML, SVG, etc.) or SGML (for HTML 4.01 and prior versions). For this document, the information available was not sufficient to determine the parsing mode unambiguously, because:
Hatalı Örnek Kullanım
1 | <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//tr-TR" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
Hatanın Çözümü
Yukardaki <!DOCTYPE html… kullanım aslında hatalı bir kullanım değildir. Ama bu şekilde kullandığınızda tüm w3c standartlarına uymanız gerekir, bunun yerine sadece <!DOCTYPE html> şeklinde kullanım yaparak sitenizin HTML5 desteklediğini bildirebilir ve sorunu çözebilirsiniz.
Attribute charset not allowed
Örnek Hata:
# Error: Attribute charset not allowed on element meta at this point.
Hatalı Örnek Kullanım
1 | <meta http-equiv="Content-Type" content="text/html" charset="UTF-8" /> |
Hatanın Çözümü
1 | <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> |
HTML5 siteler için yukarıdaki kullanım doğrudur.
Stray end tag input.
Hatalı Örnek Kullanım
1 | <input id="btn1">Tıklayın</input> |
Hatanın Çözümü
input, img, br ve hr gibi kodları kapatmak hatalıdır, bu kodları kapatmanız gerekmiyor. Yukarıdaki hatada bize </input> şeklinde kapatmamızın hatalı olduğunu söylüyor.
Input kodu için doğru kullanım:
1 | <input type="button" id="btn" value="Tıklayın"/> |
Attribute model-width not allowed
Örnek Hatalar:
# Error: Attribute model-width not allowed on element div at this point.
# Attribute mid not allowed on element div at this point.
Hatalı Örnek Kullanım
1 | <div class="ornek" model-width="222" mid='deger'> |
Hatanın Çözümü
div etiketi içerisinde model-width veya mid gibi etiket kullanımlarına izin verilmiyor, bu kodları kaldırarak sorunu düzeltebilirsiniz.
Attribute alt not allowed
Örnek Hata:
# Error: Attribute alt not allowed on element a at this point.
Hatalı Örnek Kullanım
1 | <a href="http://siteadresi.com" title="Benim Sitem" alt="Benim Sitem"> |
Hatanın Çözümü
Bağlantılar için alt etiketi geçerli bir değer değildir. Sadece title etiketi kullanmanız yeterlidir.
An img element must have an alt attribute
Örnek Hata:
# Error: An img element must have an alt attribute, except under certain conditions. For details, consult guidance on providing text alternatives for images.
Hatanın Çözümü
Sitenizdeki resimlerde alt etiketi olmadığı için bu hatayı alıyorsunuz, resimlerinize alt etiketleri ekleyerek sorunu düzeltebilirsiniz.
The form role is unnecessary for element form.
Örnek Hata:
# Warning: The form role is unnecessary for element form.
Hatalı Örnek Kullanım
1 | <form role="form"> |
Hatanın Çözümü
form etiketi için role=”form” kullanımı hatalıdır. role=”form” kodunu kaldırarak bu sorunu düzeltebilirsiniz.
Error: Bad value https://www.w3.org/1999/xhtml
Örnek Hatalar:
# Error: Bad value https://www.w3.org/1999/xhtml for the attribute xmlns (only http://www.w3.org/1999/xhtml permitted here).
# TYPE html>↩<html xmlns=”https://www.w3.org/1999/xhtml” lang=”en” xml:lang=”en”>↩<head
# Warning: Attribute xmlns is not serializable as XML 1.0.
# TYPE html>↩<html xmlns=”https://www.w3.org/1999/xhtml” lang=”en” xml:lang=”en”>↩<head
Hatalı Örnek Kullanım
1 | <html xmlns="https://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> |
Hatanın Çözümü
<html xmlns=”https://www.w3.org/1999/xhtml” lang=”en” xml:lang=”en”> kullanımında https://www.w3.org/1999/xhtml kullanımı hatalıdır. https:// yerine http:// yazarak sorunu düzeltebilirsiniz.
Element div not allowed as child of element h4 in this context.
Örnek Hata:
# Error: Element div not allowed as child of element h4 in this context. (Suppressing further errors from this subtree.)
Hatalı Örnek Kullanım
1 | <h4><div class="ornek">icerik</div></h4> |
Hatanın Çözümü
h1, h2, h3, h4, h5 ve h6 etiketleri içinde <div> kullanımı hatalıdır. Bu etiketlerden herhangi birinin içinde bulunan <div> kodunu kaldırarak sorunu düzeltebilirsiniz. Doğrusu<div> etiketinden sonra h etiketlerinin kullanılmasıdır.
The type attribute is unnecessary for JavaScript resources.
Örnek Hata:
# Warning: The type attribute is unnecessary for JavaScript resources.
Hatalı Örnek Kullanım
1 | <script type="text/javascript">js kodları</script> |
Hatanın Çözümü
Satır için JavaScript kullanımlarında type=’text/javascript’ kodu gerekli değildir, bu kodu kaldırıp sadece <script>js kodları</script> şeklinde kullanım yaparak sorunu düzeltebilirsiniz.
Sitenizde W3c doğrulaması yapmak için aşağıdaki bağlantıyı kullanabilirsiniz.
W3C İşaretleme Doğrulama Hizmeti
Web tasarımın olmazsa olmazlarından: W3C standartları… Güzel paylaşım elinize sağlık… W3C harici, sayfa hızı ve yüklenen bileşen ve resimlerin de optimize edilmiş olması büyük artılar sağlayacaktır.
merhaba w3 validatorda hatalar var ancak bunlar hangi dosya için onu bulamıyorum. yardımcıolur musunuz.
Skype üzerinden iletişime geçebilirsiniz.