Добавление 1px к размеру шрифта каждого элемента внутри определенного элемента

Есть ли способ добавить 1px к текущему размеру шрифта каждого элемента внутри .wrap, не делая это вручную?

 .wrap{
      margin-top: 169px;
      .element1{
       font-size:30px;
      }
      .element2{
       font-size:20px;
      }
    }

Использовать SASS для создания миксина?

SLaks 29.01.2019 03:58

Возможно, вы могли бы сделать это с помощью javascript/jquery...

Studocwho 29.01.2019 04:18
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
1
2
138
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Невозможно сделать это с помощью обычного CSS, если только вы не используете относительные значения (например, em), а затем не устанавливаете размер шрифта в body. Это создает стандартный размер шрифта (независимо от того, какой размер вы установили в body), а затем умножает его на то, что вы установили в качестве значения em во вложенном CSS. Например, если вы установите для body значение font-size: 16px;, а затем установите для всех остальных значений значение 1em (такое же, как 16 пикселей) или 2em (32 пикселя) и т. д., вы можете контролировать этот базовый размер, просто изменив font-size на body.

body {
  font-size: 16px;
}

h1 {
  font-size: 2em;  // 16 * 2 = 32px
}

p {
  font-size: 1.5em;  // 16 * 1.5 = 24px;
}

Кроме того, поскольку кажется, что вы используете SASS, вы можете создать переменные для размера шрифта, а затем изменить эти переменные.

$font-size-sm: 16px;
$font-size-lg: 32px;

h1 {
  font-size: $font-size-lg;
}

p {
  font-size: $font-size-sm;
}

Вы также можете выполнять математические операции с этими переменными (как заметил Мэтт Фрайер), поэтому технически вы можете добавить размер шрифта к переменной, если вам не нужно сохранять одинаковые коэффициенты масштабирования между разными размерами шрифта. (Я имею в виду, что соотношение 16 пикселей / 32 пикселя отличается от соотношения (16 пикселей + 1 пиксель) / (32 пикселей + 1 пиксель). Если вы увеличите масштаб этих изменений, вы заметите, что относительные размеры были шаткими.)

Я работаю над проектом, в котором, в зависимости от среды, мы добавляем 1px ко всем размерам шрифта. Мы делаем это следующим образом: мы определяем все размеры шрифтов в нашем языке дизайна в переменных SASS на листе, который мы используем для импорта всех наших файлов .scss для модуля сборки. У нас есть два таких листа: по одному для каждой среды. Лист для среды с «размерами шрифта +1» просто имеет все переменные размера шрифта, установленные в значения «+1».

Просто используйте переменную SASS, например:

$var: 1px;

.wrap
{
    margin-top: 169px;
    .element1
    {
        font-size: 30px + $var;
    }
    .element2
    {
        font-size: 20px + $var;
    }
}

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