Интервал и интервалы между символами HTML - PullRequest
1 голос
/ 08 декабря 2010

Почему следующие 2 раза в день не отображаются одинаково, и что я могу сделать, чтобы второй раз выглядел как первый?

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
</head>
<body>
    <div>
     8:00
                <span>8</span>
                <span>:</span>
                <span >00</span>
    </div>            

</body>
</html>

1 Ответ

1 голос
/ 08 декабря 2010

Избавьтесь от новых строк между тегами span.Вот так:

<div>
 8:00
            <span>8</span><span>:</span><span >00</span>
</div>     

Мне сложно найти его в спецификации, но, похоже, практически все браузеры берут все пробелы и "сжимают" его до одного пробела.

Вот сообщение , относящееся к SO .

В принятом ответе рекомендуется использовать String.Format для более точной обработки рендеринга - это может помочь в вашей конкретной ситуации.

Обновление:

Согласно спецификации HTML 4 :

SGML (см. [ISO8879], раздел 7.6.1) указано, чторазрыв строки сразу после начального тега должен игнорироваться, как и разрыв строки непосредственно перед конечным тегом.Это относится ко всем HTML-элементам без исключения.

Также есть интересное описание, описывающее это как ошибку здесь .

...