Наскільки погано використовувати display: none в CSS?


72

Я багато разів чув, що це погано використовувати display: noneз SEO, оскільки це може бути спроба ввести невідповідні популярні ключові слова. Кілька питань:

  1. Це все-таки отримало мудрість?
  2. Чи має значення це, якщо ви ховаєте лише одне слово чи, можливо, один символ?
  3. Якщо вам слід уникати будь-якого його використання, які переважні методи приховування (у ситуаціях, коли вам це потрібно, щоб знову було видно за певних умов)?

Деякі посилання, які я знайшов поки що:

Метт Кеттс з 2005 року в коментарі

Якщо ви прямо використовуєте CSS для приховування тексту, не дивуйтеся, якщо це називається спамом. Я не кажу, що миші або текст DHTML або текст-логотип, але також є текст є спамом; Я відповів, що останній на конференції, коли я сказав: "уявіть, як це виглядатиме для відвідувача, конкурента чи когось, хто перевіряє звіт про спам. Якщо ви вкажете ім'я своєї компанії та це маркери Expo замість логотипу Expo Markers, ви Якщо текст, який ви вирішите показати, - це "Маркери Expo дешеві онлайн знижки, купуйте в Інтернеті розпродаж маркерів Expo ...", то я буду більш обережним, тому що це може виглядати погано ".

І в іншому коментарі до тієї ж статті

Ми можемо позначити текст, який, схоже, є прихованим за допомогою CSS в Google. На сьогоднішній день ми не алгоритмічно видаляли сайти для цього. Ми дуже намагаємось уникати викидання немовлят ванною.

Ерік Енге сказав у 2008 році

Легальне використання цієї методики настільки поширене, що я рідко сподіваюся, що пошукові системи покарають сайт за використання display: noneатрибута. Просто реалізувати алгоритм, який міг би по-справжньому викрити, чи саме використання display: noneмає на меті обдурити пошукові системи, дуже важко.


Що робити, якщо я використовую завантажувальний білий екран (без тексту всередині нього), який згодом приховую за допомогою JavaScript? Чи вважатиме Google, що я ховаю сторінку під цим білим екраном? Дякую
bloomingsmilez

Я використовую дисплей: жоден, щоб зменшити вміст сторінки для екранів мобільних пристроїв, оскільки обсяг копії, який здається розумним на великому екрані, занадто великий на телефоні. Чи я створюю собі проблему?

Відповіді:


57

У ці дні важких веб-сайтів jQuery (та інших фреймворків JavaScript) я не можу зрозуміти, як це може бути проблемою, оскільки він широко використовується, коли ви використовуєте такі речі, як повзунки jQuery, переходи, галереї, галочки тощо. Це зараз звичайне явище і пошукові системи досить розумні, щоб не сліпо покарати їх використання.

Користувач заявляє про це на форумі Центру веб-майстрів Google :

"Просто використання дисплея: жоден автоматично не спричинить штраф. Ключ полягає в тому, чи існує механізм - автоматичний або той, на який користувач викликає - щоб зробити вміст видимим. Google стає дуже вмілим при обробці JavaScript знайдіть та інтерпретуйте такі механізми. Якщо ви використовуєте дійсні HTML, CSS та JavaScript, вам нічого не турбувати. Удачі! "


Цікаво, дякую. Це означає, що я повинен уникати лінивого використання display: noneта видалення елементів у CSS, які можна було б видалити в коді; але для ефектів і подібних мені добре. Тоді мені цікаво, як вони можуть виявити ситуації, коли є логотип зображення, а текст логотипу також включений для доступності, але прихований. З опису це вважалося б поганим?
Енді

@Andy: Це може. Але ви не повинні використовувати CSS, щоб приховати текст логотипу; помістіть його в altатрибут imgтегу. Саме для цього є атрибут, і, наскільки я знаю, його використання, як правило, підвищує ваш рейтинг SEO.
David Z

Насправді це здається, що це може бути випадок, коли ви використовуєте longdescатрибут тегу зображення для надання посилання на іншу сторінку, що містить повний опис. Це побачать лише читачі екранів (і, можливо, пошукові системи). Дивіться webaim.org/techniques/images/longdesc#longdesc
Dan Diplo

Я насправді не шукаю найкращого способу представити опис графіки ... Я мав на увазі цитату Метта Кеттса. Я не кажу, що ... є спамом . Мені це не звучить так, як він говорить про використання altабо longdescатрибутів, і це незначно протиставляє Ключ, чи є механізм, чи ні, щоб зробити вміст видимим .
Енді

7

Якщо ви не зловживаєте цим, це не буде проблемою. Наразі Google не сканує таблиці стилів CSS, шукаючи екземпляриdisplay: none

Google не збирається оголошувати війну широко застосовуваному стильовому правилу, вони просто попереджають тих, хто думає, що можуть додати 1000 ключових слів на сайт, який налаштований на display: noneабо навіть гірше,margin-left: 9999px


6

Використовуйте "display: none" лише тоді, коли це правильний інструмент для використання.

Як говорять цитати, проблемні пошукові системи, які не відображають, не є спамом. Спроба пошукових пошукових систем, незалежно від того, якими інструментами ви користуєтесь, є поганою ідеєю. Якщо ви використовуєте CSS для чогось іншого, крім спаму, то проблем немає.

Правильний інструмент для правильної роботи.


3
Дякую. Тоді питання стає, коли це display: noneправильний інструмент. Ви кажете, що якщо CSS використовується для чого-небудь, крім спаму, це не буде проблемою: ви впевнені, що якщо я використовую display: noneяк ледачий спосіб видалення елементів, це не буде проблемою?
Енді

@Andy display: жоден не є правильним інструментом, коли ви не хочете відображати деякий вміст. Щоб видалити елементи, можливо, найкраще взагалі не включати їх (або, якщо використовувати JavaScript, видаляти елементи з DOM). Якщо ви видалите вміст зі сторінки за допомогою дисплея: жодного, тому користувачі не бачать його, але пошукові системи все ще індексують його, то це буде спамом. Якщо у вас є якась кнопка "Показати / приховати", чи щось подібне, це все в порядку.
luiscubal

4

Я погоджуюся з Деном Диплом, і додаю до того, що він сказав, також сам Google використовує display: noneна своїй ГОЛОВНІЙ СТРАНИЦІ , тож справді це не може бути проблемою при використанні його, якщо ви не використовуєте його для спаму (тобто вставки сотень фо ключові слова на дисплеї: жодна панель DIV).

Відкрийте ДОМАШНУ СТОРІНКУ Google і знайдіть вихідний код HTML. Шукати display:noneвас ви побачите це багато разів. :)


Дякую Марко. Це все ще залишає питання, чи можна використовувати display: noneелементи, які ніколи не видно.
Енді

@Andy: ніколи видимі елементи не повинні бути просто СПАМ, я не бачу, чому ви повинні використовувати ніколи не видимі елементи, навіщо турбуватися розміщувати їх на HTML-сторінці? Тож я б очікував, що використовувати їх не дуже добре. Google може виявити їх зараз чи в майбутньому та санкціонувати ваш сайт.
Марко Демайо

Єдиний приклад, про який я можу придумати, - це коли ви використовуєте CMS, і ви можете час від часу використовувати CSS, щоб приховати один або два невеликих біта розмітки, а не спеціально розміщувати розмітку повністю. (І я лише прошу Q краще зрозуміти поточну ситуацію - мій CMS на вибір - Drupal, де змінювати розмітку швидко і просто.)
Енді,

@Andy - Чи навіть логічно можливо пошуковій системі прочитати тисячі рядків javascript і виявити випадки, коли логічно неможливо відобразити елемент? Було б потрібно величезна зворотна інженерія, щоб вивчити код будь-якого сайту за допомогою одного рядка, який говорить $('.'+somevar).show();і з'ясувати все можливе значення somevar, і порівняти це з кожним можливим станом DOM - і це виключно тривіальний випадок ... Також, безліч випадків, коли div не буде показано через дані, введення, результати викликів API / AJAX, поведінку користувачів тощо, але логічно це могло б ...
user568458

@ user568458 Я думаю, що саме це стосується Еріка Енге в останньому абзаці запитання, а Дена Дипло у прийнятій відповіді.
Енді

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 може робити все, що завгодно на своєму сайті, вони проблемно ставлять себе на перше місце, навіть якщо це була картопля.

Зокрема, запропонований і, можливо, застосовуваний підхід полягає в тому, щоб показати його і незалежно від того, які конструктивні наслідки це може мати.

Я запропоную речі як z-індексація (шарування), щоб перевірити, чи випадково такі стилі не розглядаються. Але я не думаю, що алгоритм є досить сильним, щоб розглянути це. Або такі речі, як обчислення позиції поля над розміром екрана, слід вважати негативне позиціонування візуальним блоком.

Текст, пов’язаний із зацікавленням клієнта seo ergo, повинен бути видимим.


1
Ця відповідь виправдана неправильно. На яку б конференцію ви не ходили, це жахливо. Я не уявляю, яким іншим сміттям вони вас годували. Вони, напевно, сказали, що метатеги теж були важливими.
Джон Конде

1
Це правда, що якщо створити довгий список ключових слів, розмістити його на своїй сторінці та приховати його з відображенням: жодне, Google буде штрафувати ваш сайт. Також вірно, що текст, призначений для індексації, повинен бути видимим. Як вказують інші відповіді, для відображення є законними способи використання: немає.
Стівен Остерміллер

Технічні засоби, які використовуються для приховування тексту, для Google взагалі не мають значення. Міркування про те, що z-індекс або негативне позиціонування може бути використане для перемикання Google, є помилковими. Googlebot відображає сторінки зараз і може виявити будь-які засоби, які використовуються для того, щоб текст не відображався у пікселях на сторінці. Як і інші відповіді, наголошують, ні
Стівен Остерміллер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.