Встроенные блоки отображаются в IE как одно слово - PullRequest
0 голосов
/ 17 сентября 2008

Проблема в том, что у меня есть несколько тегов "h2", которые имеют атрибут display:inline, и в замечательных браузерах Microsoft пространство между ними не появляется. Есть ли обходной путь?

Я знаю, что в HTML есть "неразрывный пробел"  , но мне было интересно, можно ли сделать пробел, который может быть "пробелом".

--- редактировать ---

Веб-сайт http://newstoday.ro, и поведение находится в нижнем колонтитуле. Если сайт открыт в IE, список непрерывен, хотя между словами есть пробел. Пожалуйста, не комментируйте остальную часть кода, так как я просто водопроводчик в этой ситуации. Также есть необходимость в заголовках, так как клиент считает, что это лучше для SEO.

Ответы [ 7 ]

2 голосов
/ 17 сентября 2008

Я не могу придумать, почему вы хотите, чтобы h2 отображался в строке. На самом деле, зачем вам два заголовка читать вместе? Подумайте, как это следует читать. Вы хотите, чтобы это читалось:

"Заголовок один заголовок два"

или

"Заголовок один"

"Заголовок второй"

Если это первый путь, то, вероятно, ваш HTML испорчен. Если это второе, то вам, вероятно, следует подумать о его позиционировании, а не об изменении его поведения и использовать другие методы CSS, такие как float и position.

0 голосов
/ 17 сентября 2008

Ответ в том, что это невозможно. Вы имеете в виду, что вы хотите, чтобы текст в более крупном блоке текста перемещался так же, как и остальная его часть, как если бы тег был вместо

Поскольку h2 является элементом уровня блока, независимо от того, как вы его стилизуете, некоторые браузеры ( кашель ) будут подавлять вашу попытку вставить его в строку с другим текстом.

0 голосов
/ 17 сентября 2008

Примените стиль margin: 0 0.5em к обоим заголовкам - отрегулируйте 0,5 для соответствия (возможно, 0,25 или 0,75 лучше; также первый 0 - это верхнее / нижнее поле, отрегулируйте соответственно).

Примечание. Поскольку вам нужно пространство символов, вы хотите em, а не px, как предлагалось ранее.


Полный пример кода ...

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/> 
        <title>Inline Header Example</title>
        <style type="text/css">
            h2
            {
                display: inline;
                margin: 0 0.5em;
            }
        </style>
    </head>
    <body>
        <h2>First Header</h2>
        <h2>Second Header</h2>
    </body>
</html>
0 голосов
/ 17 сентября 2008

Бросок & NBSP; там, кажется, создать пространство:

<html>
    <head><title>Blah</title></head>
    <body>
        <h2 style="display:inline;">Something</h2>
        &nbsp;
        <h2 style="display:inline;">Something Else</h2>
    </body>
</html>

В этом примере вы фактически получаете 2 пробела, поэтому вы можете захотеть устранить пробелы между тегами и & nbsp; если вам требуется только один пробел. Другим вариантом будет добавление левого / правого поля к элементу заголовка.

0 голосов
/ 17 сентября 2008

Вы пытались установить свойство "margin"? Не уверен, относится ли это непосредственно к вашему вопросу.

0 голосов
/ 17 сентября 2008

Ну, тормозной пробел - это просто пробел, вы знаете "" без кавычек ...

0 голосов
/ 17 сентября 2008

Вы можете просто использовать обычный пробел, но добавить «margin-right: _ px» к определению h2 css, чтобы настроить интервал между тегами. Также допускаются отрицательные значения.

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