Использует <литий>, не включая <ул.> опасные теги? [закрытый]

Каковы опасности вставить <li>...</li> в страницу, не включая объект (объекты) в a <ul> блок? Например:

<div style="border:solid 1px red;">
    <li>Item</li>
    <li>Another Item</li>
    <li>Yet Another Item</li>
</div>

Проверка является наименьшим количеством моих проблем, я задаюсь вопросом, что это могло бы прервать браузеры для способности конечного пользователя просмотреть страницу, как предназначено.

29
задан jball 9 January 2010 в 00:23
поделиться

12 ответов

Это вообще недопустимая разметка. Если он отображается правильно, это всего лишь вопрос удачи.

Поскольку вы, кажется, определили опасность как «нарушение работы браузеров для возможности конечного пользователя просматривать страницу должным образом», то да, это опасно.

Браузеры изо всех сил пытаются компенсировать недопустимую разметку, но нет никакой гарантии вообще , что ваша страница будет отображаться правильно.

Вы говорите, что проверка - наименьшая из ваших проблем, пожалуйста, подумайте еще раз и посмотрите Зачем проверять? . Если вы заботитесь о том, чтобы ваша страница отображалась правильно, без причуд, тогда подтвердите.

Наконец, HTML Tidy может помочь вам исправить существующий HTML.

РЕДАКТИРОВАТЬ: Я отправил ваш фрагмент на browsershots.org, чтобы посмотреть, как он отображается в разных браузерах .

36
ответ дан 28 November 2019 в 01:24
поделиться
[

] Использование недействительной разметки, как в Вашем примере, может привести к неожиданному поведению на разных страницах. Если вы используете правильную разметку, браузеры будут (или должны) отображать ваше содержимое в соответствии со спецификацией. Но если вы используете неправильную разметку, браузер попробует интерпретировать разметку и отобразит страницу так, как [] думает, что вы имели в виду []. Иногда они будут отображать ее так, как вы хотите, иногда нет. Вот пример из Firefox 3.5 на Mac.[

] [

][alt text][

] [

]Первый список - это ваш код, но с правильным []

    [] тегом, заменяющим []
    []. Второй список - именно Ваш код. Обратите внимание, что во втором списке не хватает полей по умолчанию слева и пультов.[

    ] [

    ]В принципе, ничто не умрет, если вы используете такую недействительную разметку, но это действительно плохая практика, так как это приведет к неожиданным и непоследовательным результатам.[

    ].
    12
    ответ дан 28 November 2019 в 01:24
    поделиться
[

]Это перекликается со всеми остальными ответами, отчасти: с любой разметкой возникает эмпирический вопрос, работает это или нет в браузерах, в которых вы его тестируете. Вы тестировали его на всех ваших браузерах, и вы были счастливы. Это круто и это огромная часть работы. [

] [

] Но помимо этого, есть и гипотетический вопрос о том, насколько хорошо он может работать на комбинациях браузер-платформа, которые вы не тестировали, либо потому что:[

] [
    ] [
  1. ]вы не включили их в тестовый набор[
  2. ] [
  3. ]их еще не существует, либо[
  4. ] [
  5. ]они недоступны для тестирования (web-crawlers, например)[
  6. ] [
] [

]Для этого набора, который всегда становится актуальным рано или поздно, вы должны следовать стандартам - когда это возможно - и использовать прилагаемые UL или OL тэги (в данном случае). [

] [

]Стоит также упомянуть, что это облегчает отслеживание тегов LI, если вы выполняете скриптинг, или если кто-то выполняет скриптинг на вашей странице (например, Greasemonkey).[

]
2
ответ дан 28 November 2019 в 01:24
поделиться
[

] Не вижу причин, почему он не будет корректно отображаться, в то время как он не должен существовать сам по себе, он будет отлично отображаться.[

] [

] Вам, вероятно, следует поместить его в []

    [], есть []нет[] преимуществ разметки, которую вы используете, а не делаете ее правильно.[

    ].
2
ответ дан 28 November 2019 в 01:24
поделиться
[

] Как веб-дизайнер/разработчик вы знаете, что начинаете писать HTML, который даже Frontpage или Microsoft Word не сгенерировали бы. [

] [

] Придерживаться стандартов - это улица с двусторонним движением. Если мы хотим, чтобы разработчики браузеров создавали быстрые, надежные и последовательные движки рендеринга, мы должны соответствовать им наполовину, создавая последовательный, чистый и хорошо сформированный HTML.[

].
1
ответ дан 28 November 2019 в 01:24
поделиться
[

] Опасно? Ничего не взорвётся. Это может вызвать проблемы, если макет каким-либо образом важен для вас.[

] [

]Вы просто не будете знать, как браузер отобразит его.[

].
0
ответ дан 28 November 2019 в 01:24
поделиться
[

]Не могу представить, почему вы не хотите вставлять теги []

    [] или []
      [], они определяют список. Затем вы получаете контроль над тем, как отображается список, не оставляя его на усмотрение браузера, что является важным. Пропустить их - это просто написать некорректную разметку, да, в некоторых браузерах это сработает, но id определённо оставит их в списке.[

      ].
0
ответ дан 28 November 2019 в 01:24
поделиться
[

] Большинство браузеров, вероятно, возьмут это и будут работать с ним, [], но [] существует два разных списка типов: Неупорядоченные

    и упорядоченные списки
      , где упорядоченный список имеет номера для каждого элемента.[

      ] [

      ]Вместо использования тэгов

    1. можно использовать символ "-" (•), а затем
      в конце каждой строки.[

      ].
0
ответ дан 28 November 2019 в 01:24
поделиться
[

] Я бы не стал полагаться на неопределённое поведение. Просто замените это []

[] на []
    [] и используйте CSS для стилизации.[

    ].
0
ответ дан 28 November 2019 в 01:24
поделиться

Это было бы до реализации браузера, чтобы решить, что с этим делать. Если вы действительно хотите сделать это, проверьте его во всех браузерах, которые вы хотите поддержать, прежде чем использовать его.

также обратите внимание, что поведение браузеров может измениться в будущем.

0
ответ дан 28 November 2019 в 01:24
поделиться

Неожиданное поведение рендеринга на разных браузерах? SEO?

-121--1382754-

Это то же самое, что и использование , теги внутри

. Конечно, это может как-то работать на некоторых браузерах, но это определенно будет нарушено. Поведение такой конструкции представляет собой undefined , нет никаких гарантий о том, как он будет работать на разных браузерах. Не говорить о доступности, программы считывателя экрана будут вполне озадачены по поводу этой структуры.

Почему вы не можете использовать правильное

    или , тег ? Он может быть в стиле и обрабатывает так же, как
    .

    5
    ответ дан 28 November 2019 в 01:24
    поделиться

Я согласен со многими комментариями, предполагающими, что лучше использовать существующее ядро базы данных. Однако в качестве попытки фактически ответить на вопрос:

  • Чрезвычайно распространенным форматом базы данных плоских файлов является Xbase (файлы обычно с расширениями .dbf). Вы можете погуглить для «xbase» и «dbf» и найти много информации и любое количество драйверов. Вы должны быть в состоянии извлечь довольно много намеков и советов, если вы действительно заинтересованы.
  • Если вы хотите играть с тем, который очень вероятен в вашей системе, вы можете использовать ODBC «Microsoft Text Driver». Если у вас есть какие-либо данные Microsoft для доступа к данным на вашем компьютере, вероятно, у вас есть этот драйвер. Я не знаю точно, но он, вероятно, установлен с MDAC. Этот драйвер будет считывать и записывать текстовые файлы, разделенные запятыми (наряду с другими форматами).
-121--4435446-

Это невозможно. Флажок - это компонент браузера с окнами. Лучшее, что вы можете сделать, это сделать свой собственный контроль, который выглядит как флажок, но на самом деле состоит из изображения для каждого состояния.

Вот несколько примеров элементов управления, которые используют образы вместо флажков:

-121--4565888-

Неожиданный рендеринг СЕО?

0
ответ дан 28 November 2019 в 01:24
поделиться
Другие вопросы по тегам:

Похожие вопросы: