การใช้จอแสดงผลแย่แค่ไหน: ไม่มีใน CSS?


72

ฉันเคยได้ยินมาหลายครั้งแล้วว่ามันไม่ดีที่จะใช้display: noneด้วยเหตุผล SEO เนื่องจากอาจเป็นความพยายามที่จะผลักดันคำหลักยอดนิยมที่ไม่เกี่ยวข้อง คำถามเล็กน้อย:

  1. นั่นคือยังคงได้รับภูมิปัญญา?
  2. มันสร้างความแตกต่างได้หรือไม่ถ้าคุณซ่อนคำเพียงคำเดียวหรืออาจเป็นตัวอักษรเดียว?
  3. หากคุณควรหลีกเลี่ยงการใช้งานสิ่งใดเทคนิคที่ต้องการในการซ่อน (ในสถานการณ์ที่คุณต้องการให้สามารถมองเห็นได้อีกครั้งในเงื่อนไขบางอย่าง) คืออะไร

ข้อมูลอ้างอิงบางส่วนที่ฉันพบแล้ว:

Matt Cutts จากปี 2005 ในความคิดเห็น

หากคุณตรงไปตรงมาโดยใช้ CSS เพื่อซ่อนข้อความอย่าแปลกใจหากเรียกว่าสแปม ฉันไม่ได้บอกว่า mouseovers หรือข้อความ DHTML หรือมี -a-logo-but-also-text-spam เป็นสแปม ฉันตอบว่าครั้งสุดท้ายในการประชุมเมื่อฉันพูดว่า "ลองนึกภาพว่าผู้เข้าชมคู่แข่งหรือใครบางคนกำลังดูรายงานสแปมหากคุณแสดงชื่อ บริษัท ของคุณและเป็น Expo Markers แทนที่จะเป็นโลโก้ Expo Markers คุณ ควรจะดีถ้าข้อความที่คุณตัดสินใจที่จะแสดงคือ 'Expo Markers ส่วนลดออนไลน์ราคาถูกซื้อการขาย Expo Markers ออนไลน์ ... ' จากนั้นฉันก็จะระมัดระวังมากขึ้นเพราะนั่นอาจดูไม่ดี "

และในความคิดเห็นอื่นในบทความเดียวกัน

เราสามารถตั้งค่าสถานะข้อความที่ดูเหมือนว่าซ่อนโดยใช้ CSS ที่ Google จนถึงวันนี้เรายังไม่ได้ลบเว็บไซต์สำหรับการทำเช่นนั้น เราพยายามอย่างหนักเพื่อหลีกเลี่ยงการทิ้งลูกอาบน้ำ

Eric Enge กล่าวในปี 2008

การใช้เทคนิคนี้อย่างถูกกฎหมายนั้นแพร่หลายมากจนแทบจะไม่คาดหวังให้เสิร์ชเอ็นจิ้นทำการลงโทษเว็บไซต์สำหรับการใช้แอdisplay: noneททริบิวต์ เป็นเรื่องยากมากที่จะใช้อัลกอริทึมที่อาจทำให้เข้าใจได้อย่างชัดเจนว่าการใช้งานเฉพาะเจาะจงdisplay: noneนั้นมีจุดประสงค์เพื่อหลอกลวงเครื่องมือค้นหาหรือไม่


ถ้าฉันใช้หน้าจอการโหลดสีขาว (ไม่มีข้อความอยู่ข้างใน) ที่ฉันซ่อนในภายหลังด้วยจาวาสคริปต์ Google จะพิจารณาว่าฉันซ่อนหน้าเว็บไว้ใต้หน้าจอสีขาวหรือไม่ ขอบคุณ
bloomingsmilez

ฉันใช้การแสดงผล: ไม่มีเพื่อลดเนื้อหาของหน้าจอสำหรับหน้าจอมือถือเนื่องจากจำนวนสำเนาที่ดูเหมือนว่าสมเหตุสมผลบนหน้าจอที่ใหญ่ขึ้นนั้นมีขนาดใหญ่เกินไปบนโทรศัพท์ ฉันทำให้ตัวเองเป็นปัญหาหรือไม่?

คำตอบ:


57

ในวันนี้ของ jQuery (และเฟรมเวิร์ก JavaScript อื่น ๆ ) เว็บไซต์ขนาดใหญ่ฉันไม่สามารถดูได้ว่ามันจะเป็นปัญหาได้อย่างไรเนื่องจากมันถูกใช้อย่างกว้างขวางเมื่อคุณใช้สิ่งต่างๆเช่นตัวเลื่อน jQuery, ช่วงการเปลี่ยนภาพ, แกลเลอรี่, ทิกเกอร์ ฯลฯ เสิร์ชเอ็นจิ้นฉลาดพอที่จะไม่ลงโทษการใช้งาน

ผู้ใช้ระบุสิ่งนี้ในฟอรัม Google Webmaster Central :

"การใช้จอแสดงผลเพียงอย่างเดียว: ไม่มีจะไม่เรียกการลงโทษโดยอัตโนมัติคีย์คือว่ามีกลไกหรือไม่ - โดยอัตโนมัติหรืออย่างใดอย่างหนึ่งที่ถูกเรียกใช้โดยผู้ใช้ - เพื่อทำให้เนื้อหามองเห็นได้ Google กำลังเก่งมากในการประมวลผล JavaScript ค้นหาและตีความกลไกดังกล่าวหากคุณใช้ HTML, CSS และ JavaScript ที่ถูกต้องคุณไม่มีอะไรต้องกังวลโชคดี! "


น่าสนใจขอบคุณ นั่นหมายความว่าฉันควรหลีกเลี่ยงการขี้เกียจและใช้display: noneเพื่อลบรายการใน CSS ที่สามารถลบออกได้ในโค้ด แต่สำหรับเอฟเฟกต์และสิ่งที่ฉันชอบ ฉันสงสัยว่าพวกเขาจะตรวจจับสถานการณ์ที่มีโลโก้รูปภาพได้อย่างไรและข้อความของโลโก้นั้นรวมอยู่ในการช่วยการเข้าถึง แต่ซ่อนอยู่ จากคำอธิบายนี้จะนับว่าไม่ดี?
Andy

@Andy: มันอาจ แต่คุณไม่ควรใช้ CSS เพื่อซ่อนข้อความของโลโก้ ใส่ไว้ในaltคุณสมบัติของimgแท็ก นั่นคือคุณลักษณะที่มีอยู่และเท่าที่ฉันทราบการใช้มันมีแนวโน้มที่จะเพิ่มคะแนน SEO ของคุณ
David Z

ที่จริงแล้วดูเหมือนจะเป็นกรณีที่คุณใช้longdescคุณลักษณะของแท็กรูปภาพเพื่อให้ลิงค์ไปยังหน้าอื่นที่มีคำอธิบายแบบเต็ม สิ่งนี้จะเห็นได้จากโปรแกรมอ่านหน้าจอเท่านั้น (และอาจเป็นเครื่องมือค้นหา) ดูwebaim.org/techniques/images/longdesc#longdesc
Dan Diplo

ฉันไม่ได้กำลังมองหาวิธีที่ดีที่สุดในการนำเสนอคำอธิบายของกราฟิก ... ฉันหมายถึงคำพูดของ Matt Cutts ฉันไม่ได้พูดว่า ... have-a-logo- แต่ยังมีข้อความด้วย เป็นสแปม มันไม่ได้เสียงที่ฉันชอบที่เขาพูดเกี่ยวกับการใช้altหรือlongdescคุณลักษณะและมันให้ความคมชัดเล็กน้อยที่สำคัญคือไม่ว่าจะมีหรือไม่มีกลไกการ ... เพื่อให้เนื้อหาที่มองเห็น
Andy

7

หากคุณไม่ได้ใช้ในทางที่ผิดก็จะไม่มีปัญหา ในขณะนี้ Google ไม่ได้รวบรวมสไตล์ชีทของ CSS เพื่อค้นหาอินสแตนซ์ของdisplay: none

Google จะไม่ประกาศสงครามกับกฎสไตล์ที่ใช้กันอย่างแพร่หลาย แต่พวกเขาเพียงแค่เตือนผู้ที่คิดว่าพวกเขาสามารถเพิ่มคำค้นหาได้ 1,000 คำในเว็บไซต์ที่ตั้งค่าไว้display: noneหรือแย่กว่านั้นmargin-left: 9999px


6

ใช้ "display: none" เฉพาะเมื่อเป็นเครื่องมือที่เหมาะสมในการใช้

ตามคำพูดที่แนะนำเครื่องมือค้นหาปัญหาที่มีเมื่อไม่มีการแสดงผลนั้นเป็นสแปม ความพยายามในการค้นหาสแปมโดยไม่คำนึงถึงเครื่องมือที่คุณใช้นั้นเป็นความคิดที่ไม่ดี หากคุณใช้ CSS สำหรับสิ่งอื่นที่ไม่ใช่สแปมแสดงว่าไม่มีปัญหา

เครื่องมือที่เหมาะสมสำหรับงานที่เหมาะสม


3
ขอบคุณ จากนั้นคำถามก็จะกลายเป็นdisplay: noneเครื่องมือที่เหมาะสม คุณบอกว่าถ้า CSS ถูกใช้เพื่ออะไรนอกจากสแปมมันจะไม่เป็นปัญหา: คุณมั่นใจหรือไม่ว่าถ้าฉันใช้display: noneวิธีขี้เกียจในการลบองค์ประกอบมันจะไม่มีปัญหาหรือไม่
Andy

@Andy display: none เป็นเครื่องมือที่ถูกต้องเมื่อคุณไม่ต้องการแสดงเนื้อหาบางอย่าง ในการลบองค์ประกอบคุณอาจไม่ควรรวมองค์ประกอบทั้งหมด (หรือหากใช้ JavaScript ให้ลบองค์ประกอบออกจาก DOM) หากคุณลบเนื้อหาออกจากหน้าเว็บโดยใช้การแสดงผล: ไม่มีดังนั้นผู้ใช้จะไม่เห็นเนื้อหา แต่เครื่องมือค้นหายังคงจัดทำดัชนีเนื้อหานั่นคือสแปม หากคุณมีปุ่ม "แสดง / ซ่อน" หรืออะไรทำนองนั้นมันก็โอเค
luiscubal

4

ฉันเห็นด้วยกับDan Diploและเพื่อเพิ่มสิ่งที่เขาพูดGoogle เองก็ใช้display: noneในหน้าแรกของมันดังนั้นมันจึงไม่เป็นปัญหาในการใช้ตราบใดที่คุณไม่ใช้มันเพื่อการสแปม (เช่นการแทรกหลายร้อยครั้ง) คำหลักในจอแสดงผล: ไม่มีแผง DIV)

เปิดGoogle HOME PAGEและค้นหาในซอร์สโค้ด HTML ค้นหาdisplay:noneคุณจะเห็นมันหลายครั้ง :)


ขอบคุณมาร์โก ยังคงมีคำถามว่าคุณสามารถใช้display: noneกับองค์ประกอบที่ไม่สามารถมองเห็นได้หรือไม่
Andy

@Andy: องค์ประกอบที่มองไม่เห็นควรจะเป็นเพียงสแปมฉันไม่เห็นว่าทำไมคุณควรใช้องค์ประกอบที่มองไม่เห็นทำไมรบกวนวางไว้ในหน้า HTML แล้ว? ดังนั้นฉันจึงคาดหวังว่าการใช้มันจะไม่ใช่ความคิดที่ดี Google อาจสามารถตรวจพบพวกเขาในขณะนี้หรือในอนาคตและลงโทษเว็บไซต์ของคุณ
Marco Demaio

ตัวอย่างเดียวที่ฉันนึกได้คือเมื่อคุณใช้ CMS และด้วยเหตุผลบางเวลาคุณอาจต้องการใช้ CSS เพื่อซ่อนมาร์กอัปขนาดเล็กหนึ่งหรือสองบิตแทนที่จะเป็นมาร์กอัปที่กำหนดเองโดยสิ้นเชิง (และฉันขอให้ Q เข้าใจสถานการณ์ปัจจุบันให้ดีขึ้น - CMS ที่ฉันเลือกคือ Drupal ซึ่งการแก้ไข markup นั้นง่ายและรวดเร็ว)
Andy

@Andy - เป็นไปได้ในทางตรรกะหรือไม่ที่เครื่องมือค้นหาอ่านจาวาสคริปต์หลายพันบรรทัดและระบุกรณีที่เป็นไปไม่ได้ในเชิงตรรกะสำหรับองค์ประกอบที่จะแสดง มันต้องใช้วิศวกรรมย้อนกลับอันยิ่งใหญ่เพื่อศึกษาโค้ดของไซต์ใด ๆ ที่มีหนึ่งบรรทัดที่เขียน$('.'+somevar).show();และคำนวณทุกค่าที่เป็นไปsomevarได้และเปรียบเทียบกับสถานะที่เป็นไปได้ของ DOM - และนั่นเป็นกรณีที่ไม่สำคัญอย่างยิ่ง ... มีหลายกรณีที่ div จะไม่แสดงเนื่องจากข้อมูลอินพุตผลลัพธ์การโทร API / AJAX พฤติกรรมผู้ใช้ ฯลฯ แต่เหตุผลสามารถ ...
user568458

@ user568458 ฉันคิดว่านั่นเป็นจุดที่ Eric Enge ทำขึ้นในย่อหน้าสุดท้ายของคำถามและโดย Dan Diplo ในคำตอบที่ยอมรับ
Andy

3

ฉันคิดว่าคุณควรพยายามหาทางเลือกอื่น แต่นี่เป็นบทความอ้างอิง

รวมลิงก์ไปยัง Maile และ Vanessa ในการสนทนาทางวิทยุเว็บมาสเตอร์ในหัวข้อนี้ http://luigimontanez.com/2010/stop-using-text-indent-css-trick/

Maile เป็นวิศวกรของ Google http://maileohye.com/html-text-indent-not-messing-up-your-rankings/

มันเป็นสิ่งที่ Google กำลังจะเกิดขึ้นกับโซลูชั่นสำหรับ แต่ชดเชยเชิงลบและแสดงไม่มีใครไม่ปลอดภัยถ้าคุณใช้มุมมองระยะยาว


0

Google รวบรวมข้อมูลdisplay:noneเนื้อหาCSS

การซ่อนบางอย่างจาก Google นั้นไม่ดีหากคุณพยายามจัดอันดับการค้นหาโดยเจตนา

ตัวเลือกที่ซ่อนอยู่และข้อความจากผู้เข้าชมเป็นวิธีปฏิบัติทั่วไปที่กำหนดว่าเว็บไซต์เชิงโต้ตอบกลายเป็นอย่างไรดังนั้นคุณไม่ควรกังวล ในอดีตผู้คนใช้วิธีการเหล่านี้เพื่อเล่นเกม SEO ซ่อนคำหลักและลิงค์เป็นต้นผลก็คือเมื่อ Google รวบรวมข้อมูลเว็บไซต์ที่มีสิ่งที่ซ่อนอยู่จากผู้ชมจะถือว่าไซต์นั้นน่าเชื่อถือน้อยลง


0

ฉันเพิ่งมีการประชุมกับ seo ใน google และนี่ไม่เป็นความจริง แสดงว่าไม่มีการลงโทษอย่างแน่นอน บางเวลาก่อนหน้านี้จะมีการจัดการกับการแสดงผลแทนหรือใช้ขนาดตัวอักษรเชิงลบหรือเยื้องเชิงลบ

เป็นข้อเท็จจริงที่ว่าข้อความจะต้องสามารถมองเห็นได้และไม่กีดขวางด้วยวิธีที่มองเห็นได้ อย่างน้อยไม่มีหม้อไอน้ำจานหรือเนื้อหาซ้ำหรือขี้เกียจ

โดยวิธีการที่ Google สามารถทำสิ่งที่พวกเขาต้องการในเว็บไซต์ของพวกเขา probbaly ทำให้ตัวเองก่อนแม้ว่ามันจะเป็นมันฝรั่ง

โดยเฉพาะอย่างยิ่งวิธีการที่เสนอและน่าจะนำมาใช้คือการแสดงมันและไม่ว่ามันจะมีผลกระทบต่อการออกแบบอย่างไร

ฉันจะเสนอสิ่งต่าง ๆ เป็นดัชนี z (layering) เพื่อตรวจสอบว่ามีโอกาสสไตล์ใดไม่พิจารณา แต่ฉันไม่คิดว่าอัลกอริทึมนั้นแข็งแกร่งพอที่จะพิจารณาสิ่งนี้ หรือสิ่งต่าง ๆ เช่นคำนวณตำแหน่งกล่องเหนือขนาดหน้าจอเพื่อพิจารณาการวางตำแหน่งเชิงลบเป็นบล็อกภาพ

ข้อความที่เกี่ยวข้องกับความสนใจของลูกค้า seo ergo ควรมองเห็นได้


1
คำตอบนี้แบนออกผิด ไม่ว่าคุณจะไปประชุมอะไรก็แย่มาก ฉันไม่สามารถจินตนาการได้ว่าพวกเขาให้อาหารขยะอื่นกับคุณ พวกเขาอาจบอกคุณว่าเมตาแท็กก็สำคัญเช่นกัน
John Conde

1
เป็นความจริงที่ว่าถ้าคุณสร้างรายการคำหลักที่ยาววางไว้บนหน้าของคุณและซ่อนไว้ด้วยหน้าจอ: ไม่มี Google จะลงโทษเว็บไซต์ของคุณ มันเป็นความจริงเช่นกันว่าข้อความที่ต้องถูกจัดทำดัชนีจะต้องสามารถมองเห็นได้ เช่นเดียวกับคำตอบอื่น ๆ ชี้ให้เห็นว่ามีการใช้งานที่ถูกต้องสำหรับการแสดงผล: ไม่มี
Stephen Ostermiller

วิธีการทางเทคนิคที่ใช้ในการซ่อนข้อความไม่สำคัญกับ Google เลย การเก็งกำไรที่ดัชนี z หรือการวางตำแหน่งเชิงลบสามารถนำมาใช้เพื่อหลอกลวง Google คือการแบนเท็จ Googlebot แสดงผลหน้าเว็บในขณะนี้และสามารถตรวจหาวิธีการใด ๆ ที่ใช้เพื่อป้องกันไม่ให้ข้อความปรากฏในหน่วยพิกเซลในหน้าขณะที่คำตอบอื่น ๆ ชี้ให้เห็นไม่ใช่
Stephen Ostermiller
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.