it-swarm-id.com

Apa yang terjadi jika meta tag ada di badan dokumen?

Saya sedang mengerjakan aplikasi ASP dan kode, templat, dan file disusun dengan cara yang tidak memungkinkan saya mengubah apa pun di luar tag tubuh. Jadi saya berpikir tentang memasukkan tag meta ke dalam tubuh - seperti ini:

<!-- FEW ASP INCLUDES -->
<html>
    <head>
    <!-- FALLBACK TITLE AND DESCRIPTION -->
    <title>Default Title</title>
    <meta name="description" content="Default Description">
</head>
<body>
    <!-- SOME HTML MARKUP -->
    <div class="dynamic-content">
        <!-- InstanceBeginEditable name="dynamic-content" -->
        <!-- THIS IS WHERE I CAN WRITE ASP CODE -->
        <title><%= Page.Meta.GetTitle( yada, yada ) %></title>
        <meta name="description" content="<%= Page.Meta.GetDescription( yada, yada ) %>">
        <!-- InstanceEndEditable -->
    </div>
    <!-- SOME MORE HTML MARKUP -->
</body>
</html>

Saya bertanya-tanya seberapa bagus menempatkan tag meta di dalam tubuh dokumen HTML. Bagaimana pengaruhnya:

  1. mesin pencari
  2. browser
52
Salman A

Ini tentu saja tidak valid sesuai HTML4.01. Tag META adalah hanya diijinkan dalam HEAD (seperti, katakan, TITLE) jadi dengan memasukkannya ke dalam BODY, Anda pada dasarnya membuat markup yang tidak valid.

Dari tes sepintas, tampaknya beberapa browser (mis. Firefox 3.5 dan Safari 4) benar-benar memasukkan elemen-elemen ini ke HEAD saat membuat pohon dokumen. Ini tidak terlalu mengejutkan: browser dikenal untuk mentolerir dan mencoba menafsirkan semua jenis markup yang rusak.

Memiliki markup yang tidak valid jarang merupakan ide bagus. Penanganan non-standar oleh browser dapat menyebabkan berbagai inkonsistensi rendering (dan perilaku) yang sulit. Daripada mengandalkan menebak browser, yang terbaik adalah mengikuti standar.

Saya tidak tahu bagaimana mesin pencari bereaksi terhadap sup tag tersebut, tetapi saya tidak akan mengambil risiko bereksperimen untuk mengetahuinya :) Mungkin mereka hanya mengurai tag HEAD untuk informasi tertentu dan akan melewatkan semua tag yang berisi BODY Anda. Atau mungkin mereka menganggap ini sebagai upaya perjudian berbahaya dan halaman daftar hitam yang berisi markup tersebut. Siapa tahu. 

Intinya - hindari ini bila memungkinkan.

40
kangax

Intinya adalah untuk menghindari hal ini sedapat mungkin ketika DOCTYPE melarangnya. Saya pikir ini benar-benar diizinkan dalam HTML5 dan sangat berguna dalam kasus menggunakan microdata. Contoh: http://schema.org/Event

28
Michael H

Saya tidak akan melakukannya. Itu bukan tempat tag itu pergi, dan mesin pencari mungkin melihatnya sebagai spamming. Jika Anda dapat mengatur ulang halaman master, Anda selalu dapat menambahkan pemegang konten di bagian kepala. Saya telah melakukannya dengan sepele dengan:

<asp:ContentPlaceHolder ID="HeadTags" runat="server" />

Dengan cara ini Anda dapat menambahkan konten apa pun yang Anda suka di bagian kepala kembali di halaman Anda:

<asp:Content ID="Whatever" ContentPlaceHolderID="HeadTags" runat="server" >

    <meta ... >

</asp:Content>
7
John Lockwood

Jika tujuan Anda adalah optimasi mesin pencari, maka mungkin ide yang baik untuk mengikuti standar dan meletakkan semua meta tag Anda di <head>. Namun, sejauh perilaku peramban berjalan, jika Anda menempatkan tag <meta> ke dalam <body> Anda, itu masih akan berfungsi. Saya memutuskan untuk menguji ini menggunakan beberapa tag <meta http-equiv="refresh"/> dan tag <title> dalam dokumen yang memenuhi standar.

Hasil tes saya:

Firefox 18, Firefox 3.6, Firefox Mobile, Chrome 24, Chrome untuk Mobile, Opera 12, IE6, IE8, IE10:

  • Semua tag <meta> dalam tubuh diproses.
  • Tag <title> pertama dalam dokumen diproses, meskipun ada di badan. Tag <title> selanjutnya diabaikan.
  • Arahan penyegaran meta paling awal mulai berlaku, menyiratkan bahwa keduanya diproses.

IE9:

  • Sama seperti di atas, kecuali semua tag <title> di tubuh diabaikan.
  • IE10 dalam mode Standar IE9 juga berperilaku seperti ini.
  • IE9 dalam mode Standar IE8 berperilaku sama dengan IE8, memungkinkan 1 tag <title> di dalam tubuh.

Jadi, apa yang terjadi ketika Anda menggunakan meta tag di badan? Pada umumnya, mereka tampaknya berfungsi dengan baik. Tag meta mungkin akan diproses, jadi jika Anda tidak dapat menempatkannya di kepala maka saya tidak akan terlalu khawatir.

5
nullability

Beberapa tag meta yang dimaksudkan untuk mesin pencari tidak akan dihormati oleh mesin pencari di bagian tubuh halaman. 

Sebagai contoh Google mengatakan bahwa itu tidak akan menghormati rel = kanonik di badan halaman, tetapi hanya di kepala halaman. Inilah yang dikatakan Matt Cutts dari Google :

Kami tidak mengizinkan rel = kanonik dalam BODY (karena seperti yang saya sebutkan, orang-orang akan melakukan spam itu),

3

Saya akan mengatakan Anda untuk menggunakannya. Saya menemukan tag meta di dalam tubuh di berbagai halaman web, dan mereka berada di salah satu dari 10 pencarian teratas (di google). Ini menunjukkan, setidaknya bagi saya, bahwa mesin searh tidak masalah jika Anda telah menggunakan pendekatan ini. 

Anda harus terus maju jika tidak ada jalan lain.

2
Parvinder Singh

tag meta dapat ditambahkan di mana saja dalam HTML.

Perayap web dapat membacanya tetapi satu-satunya masalah adalah ketika Anda harus berbagi halaman Anda melalui beberapa aplikasi seperti facebook messenger, whatsapp dll. 

Aplikasi ini hanya membaca tag meta ada di dalam tag head . Jadi, og: image, og: description properti dari meta tag jika ditempatkan di dalam tag tubuh tidak dibaca dan karenanya tidak akan ditampilkan saat berbagi dalam aplikasi tersebut.

Jika ini hanya untuk keperluan SEO, Anda dapat menambahkan meta tag di mana saja tetapi disarankan untuk menambahkan di dalam tag kepala hanya

0
Sitaram

Saya telah memasukkan beberapa tag meta ke dalam tubuh, tetapi itu karena teknologi Microdata. Ketika saya tidak memiliki elemen reguler dengan info, bahwa saya perlu menggambarkan objek sesuai dengan kosa kata schema.org, saya menetapkan tag meta dengan konten ini. Saya lebih suka melakukannya dengan cara itu, untuk mengatur elemen dengan tampilan: tidak ada. Cara dengan tampilan: tidak ada yang bisa menyebabkan lebih banyak masalah google daripada ini, sejauh yang saya tahu. Saya setuju itu bukan praktik terbaik, tetapi ketika saya memvalidasi dokumen saya (HTML5) saya melewati validasi dengan nol kesalahan. Juga saya telah melakukan trik ini untuk beberapa proyek dan tidak satupun dari mereka memiliki masalah dengan google atau mesin pencari lainnya. Bahkan microdata meningkatkan peringkat mesin pencari. Saya tidak tahu apa sebenarnya yang ingin Anda lakukan dengan meta tag ini ke dalam tubuh, karena saya belum melihat ada mikrodata dalam kode Anda. Jika Anda membutuhkannya untuk pendekatan ini saya pikir itu ok, tetapi dalam kasus lain elemen meta harus di bagian kepala! 

0
Kaloyan Stamatov

Memiliki tag Deskripsi META di situs web adalah markup yang tidak valid, namun bukan masalah besar karena mesin pencari dapat secara teratur menemukan tag di mana pun tag itu berada. Situs web saya melakukan ini, lihat HTML saya 

http://cameras.specced.co.uk/compare/268/Canon_EOS_200D

META ada di situs web BODY namun telah diindeks oleh google dan deskripsi meta halaman telah ditetapkan sebagai teks klik meskipun dalam hasil pencarian google. 

0
cousbrad