Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: lang, i18n, многоязычный, интернационализация

Как реализовать многоязычную поддержку (i18n) в HTML? Какие атрибуты и техники используются для этого?

Этот вопрос проверяет знание атрибутов и техник для поддержки многоязычности на веб-страницах, что важно для создания приложений, доступных на разных языках.

Короткий ответ

Для многоязычной поддержки в HTML используются атрибуты lang и dir. Атрибут lang указывает язык содержимого (например, lang="en" для английского), а dir — направление текста (например, dir="rtl" для языков, которые читаются справа налево). Для управления динамической локализацией часто используют JavaScript и библиотеки вроде i18next, позволяющие менять язык интерфейса в зависимости от предпочтений пользователя.

 

Длинный ответ

Многоязычная поддержка (или интернационализация, i18n) позволяет отображать содержимое веб-страницы на нескольких языках, чтобы сделать сайт доступным для пользователей из разных стран. Основные техники включают использование атрибутов HTML и сторонних инструментов для динамической смены языка.

Атрибут lang: Этот атрибут используется для указания языка содержимого элемента или всей страницы. Он помогает поисковым системам, а также экранным читалкам правильно интерпретировать содержимое.

<html lang="en">  
	<body>    
		<p lang="fr">Bonjour!</p> <!-- Этот абзац на французском -->  
	</body> 
</html>

Атрибут dir: Устанавливает направление текста. Например, для арабского или иврита используется dir="rtl" (right-to-left), что меняет направление текста на странице.

<p dir="rtl">هذا نص عربي</p> <!-- Текст на арабском -->

Локализация с использованием JavaScript: Для динамической смены языка в зависимости от выбора пользователя или настроек браузера можно использовать библиотеки вроде i18next. Эти библиотеки позволяют хранить переводы в JSON-файлах и подставлять соответствующие значения на страницу.

import i18next from 'i18next'; 
i18next.init({  
	resources: {    
		en: { translation: { "welcome": "Welcome" } },    
		fr: { translation: { "welcome": "Bienvenue" } }  
	},  
	lng: "en", // Язык по умолчанию 
}); 
document.getElementById('welcome').innerText = i18next.t('welcome');

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    3

  • Сложность:

    6

Навыки

  • JavaScript

    JavaScript

  • HTML

    HTML

Ключевые слова

#lang

#i18n

#многоязычный

#интернационализация

Подпишись на React Developer в телеграм

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию