Mengapa wp_head () membuat margin atas di bagian atas tajuk tema saya?

8

Saya membuat tema khusus, dan elemen berperilaku sebagaimana mestinya, tetapi ketika saya menempatkan <?php wp_head() ?>tag, saya mendapatkan margin teratas, di bagian atas tajuk tema saya.

Ketika saya menghapus <?php wp_head(); ?>margin hilang. Saya sudah melakukan ini untuk sementara waktu bantuan akan menjadi besar.

tangki
sumber
1
sesuatu yang menghubungkan ke wp_head mengeluarkan ruang sebelum html apa pun dihasilkan?
Milo

Jawaban:

10

Sulit dilihat tanpa melihatnya, tetapi tebakan yang berpendidikan:

Kemungkinan besar itu adalah CSS untuk bar admin, yang hanya muncul ketika Anda masuk. <?php wp_head() ?>Akan memasukkan css untuk itu, dan <?php wp_footer(); ?>termasuk html untuk bar admin.

Jika Anda melihatnya, itu seharusnya menjadi margin-top yang ditambahkan ke tag html.

Ryan Gibbons
sumber
setuju, melihat masalah ini beberapa kali
MartinJJ
1
Ya, saya sudah membantu beberapa orang dan melihat ini. Saya pikir masalah terbesar adalah orang tidak termasuk wp_footer () dalam template
Ryan Gibbons
Untuk OP - saya pikir Anda harus menerima jawaban ini.
Greeso
2

Jika Anda mencoba menyembunyikan Admin Bar dengan menghubungkannya ke show_admin_barfilter, tetapi lakukan ini terlalu terlambat (misalnya initdengan prioritas default terlambat), Anda akan mendapatkan margin atas 28px tambahan tetapi tidak ada bar admin di sana.

Jan Fabry
sumber
1

Ini terjadi pada saya juga, ruang ini untuk bar admin di bagian atas tema Anda yang ditampilkan kepada pengguna yang masuk.

Jika Anda telah masuk ke dasbor WordPress Anda di peramban yang sama di mana Anda menggunakan tema khusus, maka ada masalahnya.

Cukup logout dari akun admin WordPress dan buka tema khusus Anda lagi.

viv
sumber
1

Saya juga mengalami masalah yang sama dan saya menyelesaikannya dengan menambahkan ini:

html{ margin-top:0px !important;}

Letakkan di bagian atas file CSS tema Anda.

rhoi
sumber
2
jawaban ini tidak berfungsi karena 28px ditambahkan inline yang lebih diutamakan daripada apa pun dalam file css
1

menambahkan "margin-top: 0px! important" ke bagian atas file CSS Anda benar-benar akan berfungsi, tetapi HANYA jika Anda mengatur kembali informasi header Anda untuk memanggil file css SETELAH wp_head dipanggil.

atribut CSS terendah akan diterapkan, 100% dari waktu.

Daniel
sumber
"Atribut CSS terendah akan diterapkan, 100% dari waktu." - Tidak harus, tergantung pada spesifikasi penyeleksi lain yang hadir .. misalnya. #content div.somedivakan selalu memiliki prioritas lebih div.somedivdari terlepas dari mana yang terakhir didefinisikan.
t31os
1

Blok gaya margin adalah output oleh _admin_bar_bump_cbfungsi yang berjalan pada wp_headaksi. Anda dapat menghapus tindakan dengan menelepon:

remove_action('wp_head', '_admin_bar_bump_cb');

Saya meletakkannya di kait fungsi skrip enqueue saya dan berhasil menghapus output margin atas, tapi saya yakin Anda bisa menempatkannya di mana saja di functions.php dan membuatnya berfungsi dengan benar.

Dengan begitu Anda tidak perlu menimpa konyol di css Anda =)

Anthony Brown
sumber
0

Anda harus melihat kelas apa yang menambahkan margin dengan pembakar atau alat serupa.

MZAweb
sumber
-1

Coba ini,

html { margin-top:0px; padding-top:0px; }
Pengembangan Wordpress Pro
sumber