2016-08-02 2 views
0

Я пытаюсь добиться следующего отображения и хотел бы знать, есть ли более чистые способы его кодирования (например. :: after). Обратите внимание, что заголовок должен быть подчеркнутым, но «.» не является частью подчеркивания. Альтернатива для этого состоит в том, чтобы иметь 2 класса span, которых я пытаюсь избежать.Использование CSS :: after без наследования родительского тега

Первый заголовок.           Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара. Это пара.

Глава 2.           Это также параграф. Это также пара. Это также пара. Это также пара. Это также пара. Это тоже пара. Это тоже пара. Это тоже пара. Это тоже пара. Это также пара. Это также пара. Это также пара. Это также пара. Это также пара.

Мои коды следующим образом:

 <STYLE> 
    .headingTitle{ 
     font-weight: bold; 
     text-decoration:underline; 
     padding-right: 1em; 
    } 

    .headingTitle::after{ 
     font-weight: bold; 
     text-decoration: none; 
     content:"."; 
    } 
    </STYLE> 

    <li><span class="headingTitle">Heading One</span>This is a para.This is a para.This is a para.This is a para.This is a para.</li> 
+0

У вас есть опечатка. Используйте '.headingTitle' и ваш код работает: https://jsfiddle.net/2psvhrkk/ –

+1

@JonP Проблема OP заключается в том, что они не хотят подчеркивать период. –

+0

Ах, ну! Есть еще проблема с опечатками. –

ответ

3

Редактировать Я взять CSS3 из. inline-block кажется достаточно.

Снято с по: https://developer.mozilla.org/en/docs/Web/CSS/text-decoration. Также обратите внимание, что это не работает в IE. Я успешно прошел тестирование в Chrome и Firefox.

.headingTitle{ 
 
     font-weight: bold; 
 
     text-decoration:underline; 
 
     padding-right: 1em; 
 
     display:inline-block; 
 
    } 
 

 
    .headingTitle::after{ 
 
     font-weight: bold; 
 
     text-decoration: none; 
 
     content:"."; 
 
     display:inline-block; 
 
    }
<ul> 
 

 
    <li><span class="headingTitle">Heading One</span>This is a para.This is a para.This is a para.This is a para.This is a para.</li> 
 
</ul>

Я хотел бы знать, почему это работает!

+0

Первый абзац https://www.w3.org/TR/CSS21/text.html#propdef-text-decoration объясняет это как-то, я думаю. Не уверен, какое из этих условий здесь применимо, но оно имеет какое-то отношение к встроенным ящикам. – CBroe

+0

По крайней мере, ваш ответ работает в более браузерах, чем моя скрипка ... –

+0

@jon P Mine работает после удаления дисплея: встроенный блок из основного класса и объявления его в :: после. Так или иначе, это сработало именно так. Спасибо за решения :) –

Смежные вопросы