Калькулятор font-size help

Зміст

Цей код представляє повноцінний веб-інструмент «Калькулятор font-size», який дозволяє розраховувати адаптивні розміри шрифтів за допомогою CSS calc() і clamp(), а також візуалізувати їх і зберігати історію розрахунків.

Можливості:

  • Використовувати rem + vw або clamp().
  • Миттєво бачити результат у px і rem.
  • Зберігати історію, копіювати CSS-код, завантажувати пресети.
  • Адаптувати інтерфейс під світлу та темну тему.
  • Пресети – кнопки швидкого завантаження попередньо налаштованих параметрів (h1, body, mobile).
  • Перемикання між calc() та clamp().
  • Зберігає останні 10 розрахунків у localStorage.
  • Можливість очищення або експорту історії у JSON.
  • Можна завантажити попередні значення для повторного використання.

Схема взаємодії компонентів і даних цього калькулятора

Схема взаємодії компонентів і даних «Калькулятор font-size»
Поля для введення значень:
Поле Призначення
remValue Фіксований розмір шрифту в rem
vwValue Адаптивний коефіцієнт vw
minRem / maxRem Мінімальний та максимальний розмір для clamp()
viewportWidth Ширина вікна (readonly)
baseFontSize Базовий розмір шрифту в px

Швидкий старт

Перемикання теми: Натисніть кнопку 🌙 у верхньому правому куті, щоб переключити світлу/темну тему.

Використання пресетів: 

Натисніть:

  • Адаптивний H1 – для заголовків
  • Гнучкий Body – для основного тексту
  • Мобільний пріоритет – для малих екранів

Введіть свої значення (за потреби):

  • rem – базовий розмір шрифту
  • vw – адаптивний розмір
  • Min / Max (clamp) – обмеження для clamp()
  • База (px) – базовий px шрифту

Обчислення:

Натисніть calc() / clamp(), щоб обрати режим формули.

Результат:
  • Отримайте готовий CSS код у полі «CSS код».
  • Візуалізація шрифту оновлюється автоматично.
  • Натисніть 📋 Копіювати, щоб скопіювати код.

Історія:

  • Зберігає останні 10 розрахунків.
  • Можна очистити або експортувати JSON.
  • Клік по запису – завантажує його назад у форму.

Приклади viewport:

  • Натисніть «Приклади viewport», щоб побачити розрахунок шрифту для 320px, 768px, 1920px.

Що нового?

Версія 2.0.1:

Поточна версія 2.0.1 суттєво вдосконалена у порівнянні з версією 2.0.0, з українськими tooltip'ами, PayPal, реорганізованою формою, покращеною історією. Загалом зроблено приблизно +20% виправлень та вдосконалень порівняно з версією 2.0.0 (завдяки виправлень помилок історії та розширення локалізації за рахунок додавання спливаючих підказок українською мовою.

Кращий UX у компактному шаблоні.
  • - real-size перед кнопками (логіка: input → viz → output).
  • - Секції розділені горизонтальними лініями.
  • - Tooltips на всі елементи - назви, кнопки, додано іконки 📐📝📱 🌙/☀️. Інтерфейс сприймається більш інтуїтивно завдяки інтерактивним підказкам.
Зміни в CSS (порівняння з версією 2.0.0)

Виправлені помилки (з оригіналу/2.0.0)
Порівняльна таблиця версій
Функція Оригінал (1.0.1) Фінал (2.0.1)
calc()
clamp()
Пресети ✅ (3 шт.)
Історія 5 записів 10 записів
Відновлення з історії ✅ (всі поля)
Експорт JSON
Приклади viewport
Debounce ✅ (250ms)
Clipboard API
Tooltips
ARIA/Accessibility
Тема (persist)
Тема (auto-detect)
Error handling Базовий Try-catch, confirm
PayPal Donate

Версія 2.0.0:

Clamp, пресети, приклади viewport.

Повна автономність: Працює офлайн, без олайн залежностей.
Оптимізована: Debounce (250ms), async clipboard, error-handling, perf (clientWidth).
  • Debounce 250ms — обмежує частоту викликів, економлячи ресурси.
  • Async clipboard — використовує сучасний асинхронний API для копіювання.
  • Error-handling — обробляє можливі помилки при копіюванні.
  • Perf (clientWidth) — враховує продуктивність при отриманні розмірів елементів, щоб не створювати зайве навантаження.
UX/Доступність: ARIA-live, keyboard nav, пресети, clamp, експорт, таблиця прикладів, persist theme, hover/focus states.
Адаптивна: Mobile-first CSS (grid/flex/media), reduced-motion.
Історія: 10 записів, clickable, v2 key (міграція), JSON export.
  • Зберігає 10 останніх записів.Записи клікабельні для перегляду деталей або повторення дії.
  • Підтримує v2 ключ, тобто нову версію сховища/даних (міграція зі старої версії).
  • Можливий експорт у JSON для зовнішньої обробки або резервного копіювання.
Безпека/Сучасність: Try-catch, confirm, secure clipboard, semantic HTML.
Компонент Що це дає
try-catch стабільність, контроль помилок
confirm захист від випадкових дій
secure clipboard сучасна захищена взаємодія з буфером
semantic HTML доступність, SEO, стандарти, менше помилок