Latest post of the previous page:
Лучше <br />api.farmanager.com: валидизация html
- Centaur
- Posts: 1083
- Joined: Tue 05 Apr, 2005 20:09
- Location: Novosibirsk, Russia
- Been thanked: 2 times
Re: api.farmanager.com: валидизация html
<p>…</p> — это один абзац текста. Их можно использовать в том числе и в таблицах, и в списках.John Doe wrote:В Энциклопедии практикуется смесь <br> и <p>.
В таблицах везде <br>.
Существуют ли на этот счёт какие-нибудь рекомендации?
И как лучше <br> или <br /> ?
P.S.
Мануалы смотрел, но не имея практики применения трудно представить.
<br> — это перенос строки внутри абзаца. Черновик спецификации HTML5 говорит:
<br /> — это XHTML’ная форма <br>. Если в начале файла сказаноHTML5 wrote: br elements must be used only for line breaks that are actually part of the content, as in poems or addresses.
The following example is correct usage of the br element:
br elements must not be used for separating thematic groups in a paragraph.Code: Select all
<p>P. Sherman<br> 42 Wallaby Way<br> Sydney</p>
Code: Select all
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Code: Select all
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: api.farmanager.com: валидизация html
Мануалы смотрел, и спрашиваю именно потому что практика с ними расходится.Centaur wrote: <p>…</p> — это один абзац текста. Их можно использовать в том числе и в таблицах, и в списках.
<br> — это перенос строки внутри абзаца. Черновик спецификации HTML5 говорит:
Сформулирую вопрос так: есть ли какой-нибудь практический смысл в некоторых местах всё же использовать <br> вместо <p>?
Вроде как <p> добавляет интервал между абзацами...
Может для таблиц это не желательно и т.п.?
В Энциклопедии указано <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">.Centaur wrote:Code: Select all
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
Есть ли смысл поменять на 4.01?
Такого в Энциклопедии нет.Centaur wrote:Code: Select all
"http://www.w3.org/TR/html4/loose.dtd">
- HaRT
- Moderator
- Posts: 10823
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Re: api.farmanager.com: валидизация html
Скажу банальность: <p> — это тэг абзаца; <br> — это тэг разрыва строки без образования нового абзаца. В принципе у абзаца могут быть такие параметры, как красная строка, вертикальные отступы перед и после, межстрочный интервал и пр.; да и с выравниванием разрыв строки взаимодействует иначе. Т.ч. эти два тэга — это просто разные вещи, хотя иногда и похожие.John Doe wrote:Существуют ли на этот счёт какие-нибудь рекомендации?
Фар есть инструмент, а не нянька. © 2009 DrKnS
- Centaur
- Posts: 1083
- Joined: Tue 05 Apr, 2005 20:09
- Location: Novosibirsk, Russia
- Been thanked: 2 times
Re: api.farmanager.com: валидизация html
Нет.John Doe wrote:Сформулирую вопрос так: есть ли какой-нибудь практический смысл в некоторых местах всё же использовать <br> вместо <p>?
Если и так, то решать это нужно правильными стилями, а не уродованием разметки.John Doe wrote:Вроде как <p> добавляет интервал между абзацами...
Может для таблиц это не желательно и т.п.?
Изменения между 4.0 и 4.01 не слишком существенны.John Doe wrote:В Энциклопедии указано <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">.
Есть ли смысл поменять на 4.01?
К валидатору.John Doe wrote:Такого в Энциклопедии нет.Centaur wrote:Code: Select all
"http://www.w3.org/TR/html4/loose.dtd">
В спецификации XML сказано, что, когда в Document Type Declaration используется PUBLIC идентификатор, за ним должно следовать два строковых литерала. Как с этим в SGML — не знаю, скорее всего полный бардак. Чисто из соображений дисциплины предпочитаю максимально соответствовать синтаксису XHTML.
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: api.farmanager.com: валидизация html
Валидатор не настаивает, иначе бы я не спрашивал.Centaur wrote:К валидатору.John Doe wrote:Такого в Энциклопедии нет.Centaur wrote:Code: Select all
"http://www.w3.org/TR/html4/loose.dtd">
Значит эту строку стоит добавить?
Поэтому и спрашиваю: Есть ли смысл просто заменить на 4.01?Centaur wrote:Изменения между 4.0 и 4.01 не слишком существенны.John Doe wrote:В Энциклопедии указано <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">.
Есть ли смысл поменять на 4.01?
Кстати о стилях: типичная ситуация в энциклопедии:Centaur wrote:Если и так, то решать это нужно правильными стилями, а не уродованием разметки.
Во всех таблицах стройные ряды значений процентов.
Можно ли от этого избавиться с помощью стилей?
Re: api.farmanager.com: валидизация html
Без стилей:
Со стилями (которые надо прописать соответственно):
Code: Select all
<table class="cont">
<col width="40%">
<col width="60%">
<tr>
<td>name</td>
<td>description</td>
</tr>
</table>
Code: Select all
<table class="cont">
<col class="forty">
<col class="sixty">
<tr>
<td>name</td>
<td>description</td>
</tr>
</table>
- t-rex
- Страшный и ужасный
- Posts: 4910
- Joined: Tue 15 Mar, 2005 16:17
- Location: Tel-Aviv
- Has thanked: 1 time
- Been thanked: 8 times
- Contact:
Re: api.farmanager.com: валидизация html
а если пример изменить вот так?
Code: Select all
<table class="cont">
<col class="name">
<col class="description">
<tr>
<td>name</td>
<td>description</td>
</tr>
</table>
Re: api.farmanager.com: валидизация html
Смысл в том, чтобы формат задавать один раз в таблице - стилями или напрямую - а не в каждом ряду или ячейке.
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: api.farmanager.com: валидизация html
Да, идеально было бы один раз.
Но спрятать значения в стиль тоже было бы хорошо (для последующих изменений), однако таблиц много, значения разные, и внятные имена стилям вряд ли не получится задать, а значит почти весь смысл теряется...
Но спрятать значения в стиль тоже было бы хорошо (для последующих изменений), однако таблиц много, значения разные, и внятные имена стилям вряд ли не получится задать, а значит почти весь смысл теряется...
Re: api.farmanager.com: валидизация html
Поиск в \fardev\enc\enc_rus2:
"cont" width=" - 235 файлов
"cont" width="40%" - 230 файлов
Я думаю, что для 230 файлов есть смысл завести ещё два стиля для колонок в таблицах.
Кроме 40/60, нашел ещё 30/10/60, 30/70, 10/90, 25/10/10/55, 20/20/60 - по одной-две таблицы.
В них можно, не создавая стилей, прописать один раз для каждой таблицы width каждой колонки. Это будет лучше, чем писать его для каждой ячейки каждой строки каждой таблицы.
"cont" width=" - 235 файлов
"cont" width="40%" - 230 файлов
Я думаю, что для 230 файлов есть смысл завести ещё два стиля для колонок в таблицах.
Кроме 40/60, нашел ещё 30/10/60, 30/70, 10/90, 25/10/10/55, 20/20/60 - по одной-две таблицы.
В них можно, не создавая стилей, прописать один раз для каждой таблицы width каждой колонки. Это будет лучше, чем писать его для каждой ячейки каждой строки каждой таблицы.
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: api.farmanager.com: валидизация html
Однозначно!g_max wrote:Это будет лучше, чем писать его для каждой ячейки каждой строки каждой таблицы.
А можно ли похожим образом оптимизировать атрибут class="cont"? (В примере выше)
Или необходимо указывать его для каждой ячейки?
-
- Posts: 3651
- Joined: Wed 23 Nov, 2005 11:11
- Location: Москва-Питер
- Has thanked: 2 times
- Been thanked: 19 times
Re: api.farmanager.com: валидизация html
Стили можно указывать так:
Code: Select all
table.cont td {...} /* Для всех клеток таблицы со стилем "cont" */
table.cont tr.header td {...} /* Для всех клеток таблицы со стилем "cont" в строке со стилем "header" */
table.cont td.somestyle {...} /* Для всех клеток со стилем "somestyle " таблицы со стилем "cont" */
- John Doe
- Бюрократ
- Posts: 13807
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 426 times
- Contact:
Re: api.farmanager.com: валидизация html
После всех рекомендованых табличных оптимизаций general.html похудел почти в полтора раза!Max Rusov wrote:Стили можно указывать так:
Прошу знатоков посмотреть, можно ли ещё что-то улучшить вот в такой обычной таблице:
- Centaur
- Posts: 1083
- Joined: Tue 05 Apr, 2005 20:09
- Location: Novosibirsk, Russia
- Been thanked: 2 times
Re: api.farmanager.com: валидизация html
В спецификации HTML 4.0 уже тоже рекомендовали писать. Да, стоит.John Doe (про loose.dtd)) wrote:Значит эту строку стоит добавить?
Да. Но пройтись валидатором ещё раз после замены.John Doe wrote:Есть ли смысл просто заменить на 4.01?
Тут вот уже написали, Как Это можно делать. А я хочу внести немного разброда и шатаний на тему, Что можно было бы делать Вместо Этого.John Doe wrote:Кстати о стилях: типичная ситуация в энциклопедии:
Во всех таблицах стройные ряды значений процентов.
Можно ли от этого избавиться с помощью стилей?
Во-первых, если ширину колонок вообще не указывать, браузер в большинстве случаев сам сделает как надо. Исключение — если в правой колонке будет много текста, он может для левой выбрать слишком маленькую ширину, и текст будет переноситься. Ну так на это есть white-space: nowrap:
Code: Select all
tr>th:first-child, tr>td:first-child { white-space: nowrap }
И ещё пару замечаний о семантической вёрстке и типографике.
Code: Select all
<tr class="cont"><td class="cont" width="10%">0x00000001</td><td class="cont" width="90%">FILE_ATTRIBUTE_READONLY. Файл только для чтения. Приложения могут читать такой файл, но не могут записывать или удалять его.</td></tr>
Code: Select all
<tr class="cont"><td class="cont" width="10%">0x00000800</td><td class="cont" width="90%">FILE_ATTRIBUTE_COMPRESSED. Файл или каталог сжат. Для файла это означает, что все данные его сжаты, для каталога - что компрессия по умолчанию применяется ко всем его файлам и подкаталогам.</td></tr>
Code: Select all
<tr class="cont">
<td class="cont" width="40%">N=<dfn><a name="abs">abs</a></dfn>(N)</td>
<td class="cont" width="60%">Возвращает абсолютную величину числового аргумента <em>N</em>.</td>
</tr>
<dfn><a name="abs">abs</a></dfn> можно короче записать как <dfn id="abs">abs</dfn>.
<em>N</em>: N выделяется курсивом не потому, что это <em>что-то важное</em>, а потому, что это <var>переменная</var>.