Bir çapa bağlantısı için alt etiket kullanmak doğru mu?
<a href="#" class="test" alt="Something" src="sfasfs" ></a>
Bir çapa bağlantısı için alt etiket kullanmak doğru mu?
<a href="#" class="test" alt="Something" src="sfasfs" ></a>
Yanıtlar:
Bu tür şeyler en iyi resmi şartnameye bakarak cevaplanır:
spesifikasyona gidin: https://www.w3.org/TR/html5/
" a
element" için arama yapın : https://www.w3.org/TR/html5/text-level-semantics.html#the-a-element
a
öğe için izin verilen tüm öznitelikleri listeleyen "İçerik öznitelikleri" ni kontrol edin :
- Global özellikler
href
target
download
rel
hreflang
type
bağlantılı "Global öznitelikleri" kontrol edin: https://www.w3.org/TR/html5/dom.html#global-attributes
Göreceğiniz gibi, öğede alt
özniteliğe izin verilmiyor a
.
Ayrıca src
özniteliğe de izin verilmediğini fark edeceksiniz .
By HTML doğrulayarak , Bunlar gibi hatalar size raporlanır.
Yukarıdakilerin için olduğunu unutmayın W3C'nin 2014 HTML standardı olan HTML5. 2016 yılında HTML 5.1 oldu sonraki HTML standardı . İzin verilen öznitelikleri bulmak da aynı şekilde çalışır. Bunu göreceksiniza
eleman HTML 5.1 'de başka bir özellik olabilir:rev
.
Tüm HTML spesifikasyonlarını (en son standart dahil) W3C'nin HTML Mevcut Durumunda bulabilirsiniz .
title
.
Çapalar için bunun yerine başlık kullanmalısınız. alt bir değeri geçerli değil. Bkz. Http://w3schools.com/tags/tag_a.asp
"başlık" tarayıcılarda yaygın olarak uygulanmaktadır. Deneyin:
<a href="#" title="hello">asf</a>
title
göre HTML5 spesifikasyonuna göre yanlış (çoğu tarayıcı bunu uygulayacak olsa da).
Hayır, bir alt
özniteliğe (bir öznitelik olabilir, bir etiket değil) izin verilmez.a
herhangi bir HTML belirtimindeki veya taslağındaki öğe . Ve herhangi bir tarayıcı tarafından herhangi bir önemi olduğu anlaşılmıyor.
O halde, insanların onu neden kullanmaya çalıştıkları biraz gizemlidir, ancak olası açıklama, fareyle üzerine gelindiğinde bir "araç ipucu" görmeyi umarak, bunu öğeler alt
için özniteliğe benzer şekilde yapıyor olmalarıdır img
. Bunda yanlış olan iki şey var. İlk olarak, her elemanın, her elemanın özelliklerinde tanımlanan kendine ait öznitelikleri vardır. İkinci olarak, alt
bazı eski tarayıcılarda özniteliklerin "araç ipucu" sunumu, beklenen bir şeyden ziyade bir tuhaflık veya hatta bir hataydı; alt
nitelik ve görüntü kendisinin takdim edilmemesi durumunda ise herhangi bir nedenle kullanıcıya sunulacak gerekiyordu.
Bir "araç ipucu" oluşturmak için, title
bunun yerine özniteliği veya daha iyisi "CSS araç ipuçları" için Google'ı kullanın ve tercihinize göre CSS tabanlı araç ipuçlarını kullanın (bunlar, fareyle üzerine gelindiğinde görünür hale gelen gizli "katmanlar" olarak tanımlanabilir).
Açıklayıcı bilgileri, bir alt özniteliğine benzer şekilde uygulamak istiyorsanız, bağlantı etiketleri için başlık özniteliğini kullanmalısınız. Başlık niteliği, bağlantı etiketlerinde geçerlidir ve bağlantılı sayfa hakkında bilgi sağlamaktan başka bir amaca hizmet etmez.
W3C, başlık özniteliğinin değerinin bağlantılı belgenin başlığının değeriyle eşleşmesini önerir, ancak bu zorunlu değildir.
http://www.w3.org/MarkUp/1995-archive/Elements/A.html
Alternatif olarak ve daha faydalı olması muhtemel, ARIA erişilebilirlik özelliğini kullanabilirsiniz. aria-label
(karıştırılmamalıdır aria-labeledby
). aria-label
alt özniteliğinin görüntüler için yaptığı, ancak görüntü olmayan öğeler için aynı işlevi görür ve ekran okuyucular için optimizasyonunuzdan bu yana bir miktar optimizasyon ölçüsü içerir.
http://www.w3.org/WAI/GL/wiki/Using_aria-label_to_provide_labels_for_objects
Yine de bir bağlantı etiketini açıklamak istiyorsanız, genellikle rel veya rev etiketini kullanmak uygun olur ancak belirli değerlerle sınırlandırılırsanız, insan tarafından okunabilir açıklamalar için kullanılmamalıdır.
Rel, bağlantılı sayfanın mevcut sayfayla ilişkisini açıklamaya yarar. (örneğin, bağlantılı sayfa mantıksal dizide sonraki ise rel = next olacaktır)
Rev özelliği, esas olarak rel özelliğinin ters ilişkisidir. Rev, mevcut sayfanın bağlantılı sayfayla ilişkisini açıklar.
Geçerli değerlerin bir listesini burada bulabilirsiniz: http://microformats.org/wiki/existing-rel-values
Başlık kullandım ve işe yaradı!
Title özelliği, bağlantının başlığını verir. Bir istisna dışında, tamamen tavsiye niteliğindedir. Değer metindir. Bunun istisnası, başlık özniteliğinin alternatif stil sayfası kümelerini tanımladığı stil sayfası bağlantıları içindir.
<a class="navbar-brand" href="http://www.alberghierocastelnuovocilento.gov.it/sito/index.php" title="sito dell'Istituto Ancel Keys">A.K.</a>
Etikette alt
özellik kullanımının geçerli olmadığını belirten tüm yanıtları görünce şaşırdım . Bu kesinlikle yanlış.a
Html, herhangi bir öznitelik kullanmanızı engellemez:
<a your-custom-attribute="value">Any attribute can be used</a>
alt
Özniteliği kullanmanın anlamsal olarak doğru olup olmadığını sorarsanıza
söyleyeceğim:
HAYIR. Görüntü açıklamasını ayarlamak için kullanılır<img alt="image description" />
.
Özniteliklerle ne yapacağınızla ilgili bir mesele. İşte bir örnek:
a::after {
content: attr(color); /* attr can be used as content */
display: block;
color: white;
background-color: blue;
background-color: attr(color); /* This won't work */
display: none;
}
a:hover::after {
display: block;
}
[hidden] {
display: none;
}
<a href="#" color="red">Hover me!</a>
<a href="#" color="red" hidden>In some cases, it can be used to hide it!</a>
Yine, özel özniteliği kullanmanın anlamsal olarak doğru olup olmadığını sorarsanız şunu söyleyeceğim:
Hayır data-*
. Anlamsal kullanımı için öznitelikleri kullanın.
Hay aksi, soru 2013'te soruldu.
title
özniteliği görmüyorum,a
butitle
özniteliği içinde kullanmaka
veya kullanmamak doğru mu?