Принудительная высота линии до фиксированного значения

Есть ли какой-нибудь способ строго установить высоту строки всего абзаца или div?

Я использую HTML+CSS для типографской печати книг, и я хочу, чтобы каждая строка имела одинаковую высоту, независимо от того, что будет внутри строки.

Общие проблемы связаны с верхним индексом или увеличенными частями текста, которые (более или менее успешно) рассматриваются в нескольких других вопросах здесь, на SO:

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

Итак, проблемы в предыдущих "решениях", в частности:

  1. <sup> Решение для тегов требует ручного воспроизведения нескольких размеров, пока оно не станет правильным.
  2. Второй поток действительно не решает проблему. Когда часть текста становится достаточно большой, никакой комбинации display:inline-block;, overflow:hidden; а также vertical-align:top; будет делать - линия в конечном итоге будет расти.

Что я пробовал:

Короче, смотрите этот JSFiddle.

Я попытался применить все комбинации этих правил CSS:

  • display: inline-block; (или просто inline)
  • overflow: hidden;
  • vertical-align: top;
  • line-height: 1px;

Однако изменение размера текста на достаточно большой все еще приводит к увеличению размера строк. А добавление изображений (например, графических смайликов, которые могут быть всего на 1 пиксель выше обычной высоты строки) приведет к тому, что линии снова станут больше.

Что я хочу:

  1. В идеале мне нужно решение, которое бы гарантировало, что эти проблемы не появятся вообще. Я не против обрезать большие элементы сверху / снизу или с обеих сторон;
  2. Если (1) невозможно, мне нужен хотя бы способ выделить и четко увидеть каждую строку, где это происходит. Другими словами, если какая-либо строка становится всего на 1 пиксель выше, мне нужно, чтобы она привлекла мое внимание, даже когда просто просматривал текст.

0 ответов

Другие вопросы по тегам