Мой html-код генерится php-скриптом. Если знак препинания обернут в отдельный тег и стоит на следующей строке, то между этим знаком препинания и предшествующим словом появляется нежелательный пробел:
текст1; текст2 ; текст3; текст4; ...
Можно ли как-то отменить перенос строки в html-коде и добиться, чтобы у пользователя в браузере текст и знаки препинания отображались без пробелов?
@if ('' != $wmeaning->multi_translation)
{{ $wmeaning->multi_translation }};
@endif
@foreach ($bridge->translationAdditions as $translationAddition)
@if (!empty($translationAddition->translation_addition))
{{ $translationAddition->translation_addition }}
@endif
@if (!empty($translationAddition->translation_comment))
{{ $translationAddition->translation_comment }}
@endif
@if (!empty($translationAddition->translation_operand))
{{ $translationAddition->translation_operand }}
@endif
;
@endforeach
Ответ
UPD 3. Стоящей на отдельной строке давать другой класс ;, которому назначить margin-left: -10px;. Значение подобрать под размер шрифта.
.container {
font-size: 40px;
}
.semicolon-alone {
margin-left: -10px;
)
text ;
UPD 2. С учётом комментариев к ответу предлагаю ещё три варианта.
1) Узнать, как вставлять более серьёзные куски PHP, собирать строку без лишних пробелов и выводить её целиком. Не работал с Laravel. Нужно нечто в таком духе:
$tmp = "";
if (!empty($translationAddition->translation_addition)) { $tmp .= "" . $translationAddition->translation_addition . ""; }
if (!empty($translationAddition->translation_comment)) { $tmp .= "" . $translationAddition->translation_comment . ""; }
if (!empty($translationAddition->translation_operand)) { $tmp .= "" . $translationAddition->translation_operand . "'; }
$tmp .= ";";
2) Закрывать комментарии по условию. Будет много, очень много комментариев.
@if ('' != $wmeaning->multi_translation) {{ $wmeaning->multi_translation }}; @endif
@foreach ($bridge->translationAdditions as $translationAddition) @if (!empty($translationAddition->translation_addition)) {{ $translationAddition->translation_addition }} @endif {{ $translationAddition->translation_comment }} @endif {{ $translationAddition->translation_operand }}; @endforeach
3) Обнулять размер шрифта только у содержимого цикла. Для этого заворачивать его в дополнительный спан.
.kill-the-space { font-size: 0; } .text, .semicolon { font-size: 20px; )
@foreach ($bridge->translationAdditions as $translationAddition)
@if (!empty($translationAddition->translation_addition)) {{ $translationAddition->translation_addition }} @endif
@if (!empty($translationAddition->translation_comment)) {{ $translationAddition->translation_comment }} @endif
@if (!empty($translationAddition->translation_operand)) {{ $translationAddition->translation_operand }} @endif
; @endforeach
UPD. Предлагаю добавить в ваш код HTML-комментарии, чтобы спрятать просвет между спанами:
@if ('' != $wmeaning->multi_translation) {{ $wmeaning->multi_translation }}; @endif
@foreach ($bridge->translationAdditions as $translationAddition) @if (!empty($translationAddition->translation_addition)) {{ $translationAddition->translation_addition }}; @endforeach
Если программа такое не переварит, то клонировать точку с запятой:
@if ('' != $wmeaning->multi_translation) {{ $wmeaning->multi_translation }}; @endif
@foreach ($bridge->translationAdditions as $translationAddition) @if (!empty($translationAddition->translation_addition)) {{ $translationAddition->translation_addition }}; @endif
@if (!empty($translationAddition->translation_comment)) {{ $translationAddition->translation_comment }}; @endif
@if (!empty($translationAddition->translation_operand)) {{ $translationAddition->translation_operand }}; @endif @endforeach
А вот так можно заткнуть дыру с помощью стилей:
.container { font-size: 0; } .text, .semicolon { font-size: 20px; )
text2 ;
text3 ;
Комментариев нет:
Отправить комментарий