Почему эти элементы Youtube (offer-list-items) имеют одинаковый идентификатор - PullRequest
0 голосов
/ 05 февраля 2019

Мне это кажется странным:

enter image description here

Взгляните на снимок экрана выше, снятый с Youtube.Может кто-нибудь объяснить, для чего нужно иметь одинаковые идентификаторы (dismissable, dismissed) для нескольких элементов?Это видео с подсказками справа, в то время как воспроизводится другое видео, как на скриншоте ниже:

enter image description here

Ответы [ 3 ]

0 голосов
/ 09 февраля 2019

Валидатор HTML: https://validator.w3.org/ показывает, что YouTube и, фактически, многие веб-сайты Google не соответствуют HTML.

Примечание : я протестировал копию HTML, потому что при использовании URL-адреса будет обрезан некоторый HTML-код, отображаемый после загрузки страницы.

Я анализирую требуемую страницу ион показал более 1000 ошибок HTML.См. Ошибку № 1001 ниже:

enter image description here

Относительно вашего вопроса.Указанный идентификатор является дубликатом, и это не разрешено в HTML.Идентификатор использовался для стилевого оформления CSS (что является плохой практикой для форматирования нескольких элементов с использованием идентификатора. Хорошей практикой является использование класса. См .: enter image description here

Заключение Веб-сайты Google - плохие примеры для тех, кто изучает профессиональное программирование. Фактически, я однажды написал статью в LinkedIn о том, как Google просит веб-сайты соблюдать некоторые правила SEO, однако ни один из веб-сайтов Google не следует своим собственным правилам SEO.Моя статья на Linkedin для более подробной информации.

0 голосов
/ 15 февраля 2019

Вполне возможно иметь несколько элементов с одинаковым идентификатором.Это, как правило, не лучшая практика, но она иногда используется.Что касается работы селекторов, если вы знаете, что у вас будут конфликтующие идентификаторы, вы можете использовать свои селекторы с родителем, где идентификаторы под родителем будут уникальными.например, $ ('div # car span # size) и $ (' div # truck span # size ').

Несколько идентификаторов на практике можно заменить с помощью классов.Однако классы предназначены для применения стилей, а не для идентификации элементов, что делает область имен намного шире и, следовательно, может перекрываться.Особенно если использовать сторонние библиотеки.Идентификатор как «идентификатор» не предназначен для умножения, поэтому явно необходимо что-то промежуточное.Практическое использование - разбиение разделов страницы / домена на отдельные логические единицы.Следовательно, необходимо использовать (как минимум) двухслойную идентификацию.

0 голосов
/ 05 февраля 2019

Не знаю точно, почему они используют идентификаторы.

всякий раз, когда вы нажимаете Не заинтересован в предложенном вами видео, они показывают этот отклоненный div с некоторыми опциямикак ОТМЕНА, СКАЖИТЕ НАМ, ПОЧЕМУ

Screenshot

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...