Как сделать шрифт на полную высоту - PullRequest
0 голосов
/ 14 апреля 2019

Мне нужен центр для центрирования текста по осям X и Y.Я заметил, что мой текст не на полную высоту, что является лучшим решением для придания тексту полной высоты?

Я пытался отцентрировать: 1. Высота строки 2. Преобразование 3. Сгиб 4. Таблица - ячейка таблицы -вертикальное выравнивание

HTML :

<div class="block">
        <p> 3 </p>
      </div>

SCSS :

.block {
    display: table;
    width: 50px;
    height: 50px;
    padding: 0 10px;
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 14px;
    background-color: #ecf3f5;
    border: 1px solid #c9dee4;
    margin-right: 20px;

    p {
      display: table-cell;
      vertical-align: middle;
      text-align: center;
    }
}

Что я имел в виду с полнымвысота

Эта высота действительно имеет значение, для мелкий шрифт он не виден, но с крупным шрифтом он действительно не центрирован.

Iожидать центрирования этого текста.

Ответы [ 2 ]

0 голосов
/ 14 апреля 2019

Я обнаружил проблему, неравномерность была вызвана семейством шрифтов, в моем случае я использовал Helvetica, после исправления выравнивания текста.

https://giphy.com/gifs/SYFl4xIvOdFS6e8X9q/html5

0 голосов
/ 14 апреля 2019

Я думаю, что flex - это лучший и универсальный метод для центрирования элементов по X и Y, поэтому добавьте display: flex;justify-content: center;align-items: center; вам родительский блок. После этого вы можете использовать любой font-height, какой захотите.

.block {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 50px;
    height: 50px;
    padding: 0 10px;
    border-radius: 4px;
    box-sizing: border-box;
    font-size: 14px;
    background-color: #ecf3f5;
    border: 1px solid #c9dee4;
    margin-right: 20px;
}
p {
    line-height: 20px;
}
<div class="block">
  <p> 3 </p>
</div>
...