Bir HTML belgesinin gövdesinde <link> etiketlerini kullanabilir miyim?


20

<link>Etiketleri bir HTML sayfasının gövdesinde kullanabilir miyim ? Bu sorunun cevabını bulmaya çalıştım ama çelişkili bilgiler buldum.

Bir HTML sayfasına Schema.org mikro veri işaretlemesi eklerken, böyle bir bağlantı etiketine standart bilgiler eklemek istiyorum:

<div itemscope itemtype="http://schema.org/Book">
  <span itemprop="name">The Catcher in the Rye</span><link itemprop="url" href="http://en.wikipedia.org/wiki/The_Catcher_in_the_Rye" />
  by <span itemprop="author">J.D. Salinger</span>
</div>

Yukarıdaki örnek kodu Schema.org'dan aldım . Onlara göre, bir itemprop'a kanonik bir referans eklemek isteyen ancak web sitelerine bir köprü yerleştirmek istemeyen insanlar için bu yol.

Bununla birlikte W3, <link>etiketlerin yalnızca kafa bölümüne yerleştirilmesi gerektiğini açıkça belirtir , böylece Schema.org örneğini geçersiz kılar.

Doğru işaretlemeye bağlı kalmak istersem hangi tavsiyeye uymalıyım?


Sen bağlantı veriyor w3schools.com , (W3C ile ilgisi olan) değil w3.org .
unor

Ah, evet tabii ki haklısın. W3schools bağlantısı kaldırıldı. Teşekkürler.
Edward Touw

İşte SEO'ya ne olacak: webmasters.googleblog.com/2013/04/…
Faiz

Yanıtlar:


23

Mikro veriler uzanır şekilde HTML5 linkve metakullanılabilen elemanlar body, eğer bunlar bir içeren itempropözelliği.

Eğer itempropözelliğiyle ilgili mevcut olduğu linkya da meta, içerik ve phrasing içeriği akış vardır. linkVe metaeğer cümleleme içeriği beklenen burada elemanlar kullanılabilir itempropbir özelliğin mevcut olup.

Bu uzantı şu anda HTML 5.1 Nightly'ye (Editörün Taslağı) da dahil edilmiştir ( linköğeye ve metaöğeye bakın ). Ancak Microdata spesifikasyonu son zamanlarda W3C Notu haline geldikçe , bu referansta neler olduğunu görmemiz gerekecek.

RDFa 1.1 , HTML5'i linkve metaöğelerin bodybir propertỳöznitelik içeriyorsa kullanılabilecek şekilde genişletir .

Eğer @propertyRDFa özelliğiyle ilgili mevcut olduğu linkya da metaelemanlar, bunlar kullanıldığı takdirde uygun olarak görülebilir MUTLAKA bodybelgenin. Daha spesifik olarak, linkveya metaöğeler RDFa @propertyözniteliğini içerdiğinde ve bodybir HTML5 belgesinde kullanıldığında, akış içeriği olarak düşünülmeleri GEREKİR.


Eğer bu yüzden değil kullanmasına izin herhangi link elemanı (örneğin <link href="" rel="" />cinsinden) bodyama sadece bu bir ile, itempropresp (Mikro için) özniteliği. bir propertyöznitelik (RDFa için).

Böylece linkelementiniz şu alanlarda kullanılabilir body:

<body>
<!-- … -->
  <link itemprop="url" href="http://en.wikipedia.org/wiki/The_Catcher_in_the_Rye" />
<!-- … -->
</body>

Teşekkürler! Bu yüzden doğru <link>anlarsam, bir itemprop özelliği içerdiği sürece etiketi gövdede kullanmama izin verilir ? İtemprop özelliği eklendiği sürece, hreforijinal sorumda kullandığım içeriği de ekleyebilir miyim ?
Edward Touw

@EdwardTouw: Evet; hrefher durumda özelliği vermeniz GEREKİR . linkÖğe bir itempropözniteliğe sahip olduğu sürece, öğesinde kullanabilirsiniz body. Daha sonra artık belgenin tamamı için meta veri değildir (normal linköğelerde olduğu gibi head), ancak Mikro veriler için "gizli" bir öğe olur.
ya da

11

W3Schools, HTML kodlamasında endüstri standartlarını belirlemez. Bunlar , W3C ile hiçbir şekilde bağlantılı olmayan bir üçüncü taraf referans sitesidir . W3Schools ve diğer siteler, Şema ve Duyarlı tasarım gibi en yeni kodlama teknolojilerini kullanırken genellikle yanlıştır . Oldukça yeni bir kod kullanırken, tek durak mağazanız uyum standartlarını belirlediği gibi W3C olmalı ve HTML5'i resmi olarak değil, saygı duyulan kişiler aracılığıyla anlamak için yardıma ihtiyacınız varsa belki de HTML5 Doctor olmalıdır .

Kodunuza bakıldığında, içindeki bağlantı öğesiyle ilgili herhangi bir sorun olmadan W3C doğrulamasını geçer .<body> </body>

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>

<body>
<div itemscope itemtype="http://schema.org/Book">
  <span itemprop="name">The Catcher in the Rye</span><link itemprop="url" href="http://en.wikipedia.org/wiki/The_Catcher_in_the_Rye" />
  by <span itemprop="author">J.D. Salinger</span>
</div>
</body>
</html>

KISA CEVAP: Evet,<LINK>içindekullanabilirsiniz,<body> </body>ancak Unor'un cevabında belirttiği gibi itemprop içermelidir.


2009'dan itibaren bir HTML5 taslağına bağlandığınızı unutmayın. Geçerli HTML5 CR'de ilgili tanım dahil değildir.
unor

0

itempropÖzellik mevcutsa, bağlantı öğesi bir HTML belgesinin gövdesine eklenebilir . İşte bir demo .

Ayrıca burada bir link itemprop özellik örneği.


2
Bunlar sitenize bağlantılarsa, lütfen "Bunu buradaki blogumda ele aldım ..." gibi bir sorumluluk reddi beyanı ekleyin.
dan
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.