<div style="margin-top:-21px">
@include('partials.header')
</div>
<div style="margin-top:-21px">
@include('partials.navig')
</div>
<div style="margin-top:0px">
@include('partials.footer')
</div>
Выше HTML / Laravel код вставляет частичные в макет. Каждый раз, когда я использую частичное, оно вставляет пустые пробелы в вывод HTML и вызывает уродливый пробел (пустую строку) над частичным. Вот почему я использую margin:top:-21px
, чтобы скрыть пустой ряд. Но проблема в том, что в Internet Explorer эти пробелы не видны, и поэтому частичные значения слишком сильно смещены. Вот вывод HTML и как выглядит пустая строка:
Я понятия не имею, что может вызвать эти пробелы, это не неправильный запас элементов или что-то в этом роде. Есть ли решение или объяснение этому?
Я нашел решение:
Проблема была в кодировке. Изменилось с UTF-8 на UTF-8 без DOM.
Альтернативное решение — это обтекание части в div с высотой строки: 0 и div в частностях, возвращаемых обратно в высоту строки: 1.
Это потому, что вы включаете частичные в новую строку. Попробуйте включить их в один ряд, и это должно решить вашу проблему.
<div style="margin-top:-21px">@include('partials.header')</div>
Laravel не вставляет пустых строк. Вы должны просмотреть свои частичные файлы и убедиться, что в начале и в конце нет пустых строк / пустых мест. Вы должны также рассмотреть возможность включения этих частичных сразу после закрытия div
а не в следующей строке.
Например:
<div style="margin-top:-21px">@include('partials.header')</div>
<div style="margin-top:-21px">@include('partials.navig')</div>
<div style="margin-top:0px">@include('partials.footer')</div>
И когда вы введете в эти партиалы только имя файла, вы получите следующий вывод:
<div style="margin-top:-21px">header</div>
<div style="margin-top:-21px">navig</div>
<div style="margin-top:0px">footer</div>
Как видите — ни пробелов, ни пустых строк.
Конечно, уловка с отрицательным запасом — это очень неправильные решения, поэтому вы должны проанализировать свои партиалы, а также заменить эти файлы на метод, который я показал здесь.