Фон для сайта в тетрадную клеточку на чистом CSS

Все мы понимаем, что фоны и градиенты на CSS имеют огромнейшее преимущество перед фонами сделанными на основе изображений.

Сегодня я хочу поделиться фоном, градиент которого сделан в виде тетрадной клетки.

Можно найти много тематик, где данный фон будет востребован и они не будут ограничиваться только школьной тематикой.


Фон для сайта в тетрадную клеточку

Он выполнен в стиле разметки тетрадной клетки.

Как пример, вот блок у которого фон как школьная тетрадная клетка сделанная на CSS:

 

CSS-код

.kletka {
	background: linear-gradient( #bbb, transparent 1px), linear-gradient( 90deg, #bbb, transparent 1px);
	background-size: 20px 20px;
	background-position: center center;
}

 

Чтобы размещать на таком фоне текст и при этом он аккуратно вписывался в строки, то здесь нужно индивидуально проработать над такими свойствами как font-size и line-height, которые отвечают за размер шрифта и межстрочный интервал соответственно.


Клетка с полями

Если нам нужна полная имитация традиционного тетрадного листика в клеточку, то мы можем добавить в наш css-фон поле.

Будет это выглядеть так:

 

CSS-код клетки с полем:

.kletka-pole {
    background-image: linear-gradient(90deg, transparent 81px, #ED82AD 81px, #ED82AD 84px, transparent 84px), linear-gradient(#bbb 1px, transparent 0px), linear-gradient(90deg, #bbb 1px, transparent 0px);
    background-size: 100% 100%, 20px 20px, 20px 20px;
    background-position: 0 0, -1px -1px, -1px 1px;
}

 

Поле с правой стороны

Разместить поле с правой стороны безпроблемно можно только для блоков имеющих фиксированную ширину, то есть блок должен иметь свойство width со значением в пикселях.

Например: width: 768px или max-width: 700px;

Применение свойства width крайне нежелательно для адаптивных сайтов, так как при больших значениях он начнёт ломать адаптацию, растягивая экран на устройствах с малым монитором.

При max-width же можно задать поле исходя из максимального размера блока и тогда при уменьшении экрана сайт будет адаптироваться правильно, но вод само поле будет уходить в зону невидимости (его не будет видно).

 

Как пример у меня блок ниже имеет максимальную ширину 700px и поле при максимальных экранах отображается корректно. Если экран уменьшить - то блок останется просто без поля.

Демка:

 

CSS-код для блока с полем справа:

.kletka-pole-right {
    background-image: linear-gradient(90deg,transparent 735px,#ED82AD 735px,#ED82AD 738px,transparent 738px),linear-gradient(#bbb 1px,transparent 0px),linear-gradient(90deg,#bbb 1px,transparent 0px);
    background-size: 100% 100%, 20px 20px, 20px 20px;
    background-position: 0 0, -1px -1px, -1px 1px;
}

 

Поэтому здесь нужен индивидуальный подход к каждому случаю.


Фон в клеточку с текстом

Приведённые выше примеры с фоном в тетрадную клетку можно использовать как фон сайта или как фон для отдельных блоков сайтов. Давайте я покажу вам ниже пример с реализацией фона в блоке:

Задача: найдите длину гиппотенузы прямоугольного треугольника, если катеты равны 3 и 4 см.

c² = a² + b²

c = √(a² + b²)

c = √(3² + 4²)

c = √(9 + 16)

c = √25

c = 5

Ответ: гиппотенуза треугольника равна 5 см

 

HTML код примера фона в клеточку с текстом

<div class="tetradka">
  <div class="tetradka__body">
    <p><strong>Задача:</strong> найдите длину гиппотенузы прямоугольного треугольника, если катеты равны 3 и 4 см.</p>
    <p>c² = a² + b²</p>
    <p>c = √(a² + b²)</p>
    <p>c = √(3² + 4²)</p>
    <p>c = √(9 + 16)</p>
    <p>c = √25</p>
    <p>c = 5</p>
    <p><strong>Ответ:</strong> гиппотенуза треугольника равна 5 см</p>
  </div>
</div>

 

CSS стили:

.tetradka {
    width: 96%;
	padding-left: 25px;
	padding-top: 17px;
    background-image: linear-gradient(90deg,transparent 708px,#ED82AD 710px,#ED82AD 711px,transparent 712px),linear-gradient(#e9e9e9 1px,transparent 0px),linear-gradient(90deg,#e9e9e9 1px,transparent 0px);
    background-size: 100% 100%, 20px 20px, 20px 20px;
    background-position: 0 0,-1px -1px,-1px 1px;
    font-family: monospace;
    color: #8a2be2;
    font-size: 19px;
    line-height: 24px;
	font-style: italic;
	border: solid 1px #8a8a8a;
}

.tetradka__body {
    max-width: 587px;
}

 

Если у вас есть вопросы или возникают сложности - не стесняйтесь и пишите в комментарии.

 

Как зафиксировать фон при прокрутке
Как зафиксировать фон при прокрутке Как при помощи CSS сделать так, чтобы фон (бэкграунд) при прокрутке элемента или при прокрутке страницы оставался на месте и не прокручивался.
Фон в тетрадную в линию
Фон в тетрадную в линию CSS фон для сайта с градиентом в виде тетрадной линии в трёх вариантах: обычная линия, линия с полем слева и линия с полем с правой стороны.
Фон сайта
паттерн трава Как сделать фон для сайта из фотографии, картинки или какой либо текстуры. CSS-свойства background-color и background-image.
Фоны на чистом CSS - сборник
звёздочки Подборка CSS фонов для сайта, которая сделает ваш сайт более стильным, оптимизированным и быстро-загружаемым. Используйте CSS фоны для оформления сайта.
Комментарии 0

*** чтобы писать комментарии.