Почему таблицы использования для структурирования расположения?

Независимо от того, что вы делаете в конечном итоге, убедитесь, что вы проверяете, что ваш вход еще не был искажен magic_quotes или каким-то другим благонамеренным мусором, и, если необходимо, запустите его через stripslashes или что-то еще, чтобы его дезинфицировать .

27
задан Brian Tompsett - 汤莱恩 16 September 2016 в 10:36
поделиться

14 ответов

Таблицы по сравнению с Отделениями являются бессмысленной священной войной.

существуют конкретные вопросы с использованием таблиц в особенности пути к расположению, которое может вызвать проблемы. Один из них создает все расположение сайта в единственной таблице для обработки полей и размещения - из-за способа, которым представляются таблицы, это часто означает, что веб-сайт не будет прогрессивно представлять механизмом браузера, как содержание загружает и может только быть представлено после того, как вся вещь была получена. Для большой страницы или медленного пользователя модема, они могут уставиться на пустую страницу долгое время, которая является "Плохой Вещью". Не берите в голову много несоответствий в рендеринге таблицы в mozilla/ie5 поколении браузеров который сделанный последовательными несколько болезненными разметками таблицы перекрестного браузера, особенно с изображениями в ячейках.

Сторонникам чистого пути отделения нравится говорить о содержании по сравнению с представлением, потому что в теории HTML 4.01 является чистым содержанием, всем этим значимым. Отделения обеспечивают значимую организационную структуру в абстрактном смысле, которому тогда дает представление исключительно CSS. В этих аргументах таблицы допустимы только если, будучи используемым содержать фактические табличные данные. Конечно, это игнорирует то, что для любого достаточно сложного макета, существует почти всегда довольно много пустых отделений, плавающих вокруг просто для поддержки необходимых рычагов для CSS представления, повреждая первый уровень этой абстракции. Как только эта абстракция повреждается, нет никакого закона, говоря, что, когда Ваше расположение просто требует рычага представления в HTML, который не имеет никакого значимого содержания, отделение является так или иначе более соответствующим, чем таблица. Если Вы застреваете с выбором бессмысленного отделения или бессмысленной таблицы, чтобы сделать Вашу разметку, выбрать, какой бы ни легче.

В конце, именно о том, чтобы быть знающим об ограничениях во всех методах и использовании того является самым соответствующим. Существует много случаев, где использование таблицы просто легче, чем установка бессмысленного (т.е. not-content-meaningful) массив отделений, и ограничения рендеринга таблицы не применяются. Если таблица является маленькой и представляет незначительный блок внутреннего содержания, задержка рендеринга не релевантна.

29
ответ дан nezroy 28 November 2019 в 04:10
поделиться

Я понятия не имею, но единственное объяснение, которое я могу придумать, состоит в том, что Jeff столь не поддерживает веб-стандарты, как он хотел бы, чтобы мы думали, и ни одна из команд не настолько горяча на CSS. Программисты часто используют перекрестный мыс браузера, простоту в употреблении и многочисленные другие воображаемые преимущества времени для освобождения их отсутствия навыков CSS. И я не подразумеваю, что как критика, они, вероятно, действительно хороши в программировании C#/Java/Ruby/SQL/whatever, они просто, может казаться, не признают, что действительно не знают что-то также нас набор износа воротника поло, Книга Mac, владеющая разработчиками...

0
ответ дан roryf 28 November 2019 в 04:10
поделиться

Мои мысли были бы, они пошли с таблицей, потому что (кроме таблицы аргумента по сравнению с css)

  • Они должны были добраться, функциональность выходят прокрученный быстро для имения мнения
  • , В конце концов, это - просто общедоступная бета.
  • Они экспериментировали с ASP.NET, который выпускают MVC больше и расположение, меньше
  • ТАК является всем о программировании вопросов и ответов и в конце это что вопросы.
  • ТАК все о распознавании участников путем вознаграждения точек и значков, которые оно делает вполне прилично (это может также быть спорной темой).
  • и так далее....
0
ответ дан rajesh pillai 28 November 2019 в 04:10
поделиться

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

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

0
ответ дан Brian Fisher 28 November 2019 в 04:10
поделиться

"css является слишком твердыми" и "таблицами, более быстрые и более легкие" оправдания, вместе с некоторыми вниз правильные опасения обо что случилось с использованием таблиц для структурной разметки.

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

нет ничего неправильно с не знанием css, но отклонить семантическую разметку и надлежащее использование css просто, потому что Вы не знаете, это просто НЕПРАВИЛЬНО.

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

BTW - я беру обиду при мысли, что использование таблиц для структурной разметки является 'священной войной'. В то время как некоторые могли бы думать, что Семантическая разметка чрезмерно защищена, это не основано на слепой вере.

1
ответ дан Steve Perks 28 November 2019 в 04:10
поделиться

Таблицы и расположение

расположение SO не на основе таблиц.

На быстрый взгляд, я сказал бы, ТАКИМ ОБРАЗОМ, расположение на 80% основано на отделении и на 20% основано на таблице. Таблицы используются в заголовке и на поле "значков". Использование таблицы подходит для значков, по моему скромному мнению (это - список объектов, в конце концов), не настолько хороший для заголовка.
Где-либо еще, отделения используются.

Встроенный CSS

Снова, много встроенных определений привыкли (вероятно, к быстро структуре сайта макета), но ТАКИМ ОБРАЗОМ, правильно использует также css (чтобы разработать отделения и обеспечить форматирование печати).

1
ответ дан Gabriele D'Antona 28 November 2019 в 04:10
поделиться

IE8 будет последним главным браузером, который наконец добавит поддержку дисплея CSS: таблица -* значения, таким образом, различие уйдет. Надо надеяться, это закончит жалобы на то, как твердый CSS, и люди могут прекратить загрязнять разметку представлением.

2
ответ дан brianary 28 November 2019 в 04:10
поделиться

Я - довольно умный человек, не слишком далеко ниже среднего числа, по крайней мере, но я нахожу расположение CSS полностью неинтуитивным. Таблицы чрезвычайно интуитивны. Я думаю, что одна мера хорошей технологии - то, как часто необходимо обратиться к руководству при чтении ее. Таблицы уносят CSS из воды таким образом по сравнению с CSS. Снова и снова, при использовании CSS, я должен вырыть, чтобы выяснить, как сделать что-то вроде этого

2
ответ дан Community 28 November 2019 в 04:10
поделиться

Поскольку Internet Explorer не поддерживает свойство display:table CSS, которое является тем, что обеспечивает подобную сетке модель макета (эквивалентный тому, как таблицы HTML представляются). Модель сетки является самым простым и самым гибким способом смоделировать много разметок.

, Таким образом, у Вас есть три варианта, ни один из них привлекательный:

  • поддержка жертвы Internet Explorer (все другие современные поддержки браузеров display:table свойство, которые были частью стандарта CSS2 больше десятилетия)
  • используют громоздкие обходные решения CSS, которые являются дорогостоящими и трудными поддержать.
  • жертвуют семантической чистотой и используют элементы ТАБЛИЦЫ.

ТАК выбрал последнюю опцию, вероятно, потому что они думают поддержка , пользователи Internet Explorer более важны, чем поддержка отключенные пользователи , и потому что они хотели что-то, что было быстро для разработки и простой поддержать.

4
ответ дан JacquesB 28 November 2019 в 04:10
поделиться
7
ответ дан Marius 28 November 2019 в 04:10
поделиться

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

Даже при том, что все теперь дневной разговор о расположении с css и отделениями, истина вопроса является css, ужасно когда дело доходит до расположения. Можно только сделать так много. Посмотрите на некоторые предложенные решения для получения разметок на 2 или 3 столбца с помощью css, они все сосут. Бросок <table><tr><td id="left-column"><td id="right-column"></tr></table> намного легче.

css просто не подходит для нетривиального расположения (и этим, я имею в виду чистый div/css)

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

9
ответ дан hasen 28 November 2019 в 04:10
поделиться

ТАК был, вероятно, записан программистами, не веб-разработчиками.

18
ответ дан Jough 28 November 2019 в 04:10
поделиться

не бывший вовлеченным в ТАК разработку, я только обычно говорю:

я нашел, что tables часто легче и более последовательны через браузеры, чем CSS - базирующиеся разметки.

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

Относительно того, почему они приняли решение установить таблицу width в HTML вместо CSS, я не мог сказать.

я знаю, что ТАК использовал реальное, честное разработчику совершенства, когда они запустили. Я не знаю, тем не менее, если тот разработчик дал им изображение того, на что сайт должен быть похожим или фактическая разметка.

не горите меня для того, чтобы сказать так. Мы не все ниндзя CSS.

22
ответ дан Michael Haren 28 November 2019 в 04:10
поделиться

Jeff и его команда получали сделанный быстрый и грязный. Это было очень быстрым циклом разработки без времени для рефакторинга большой части помехи.

И поверхность это - если Вы не эксперт, CSS является трудоемким для структур таблиц.

Встроенные стили и включенный css являются просто знаком, который они пытались сделать его, не волнуя (по крайней мере, для первого повторения) о "правильном" способе сделать его. Правильный путь был тем, что работало и получило сделанный быстро.

2
ответ дан Carlton Jenke 28 November 2019 в 04:10
поделиться