diff --git a/lib/include/html_head.inc.php b/lib/include/html_head.inc.php
index f93878e41421c15dac5e0310174012db50378fae..7a3083d32412d88fd1a89a889dd8ac948153de9e 100644
--- a/lib/include/html_head.inc.php
+++ b/lib/include/html_head.inc.php
@@ -17,9 +17,11 @@ $getInstalledLanguages = function () {
 
     return $languages;
 };
+
+$lang_attr = str_replace('_', '-', $_SESSION['_language']);
 ?>
 <!DOCTYPE html>
-<html class="no-js">
+<html class="no-js" lang="<?= htmlReady($lang_attr) ?>">
 <head>
     <meta charset="utf-8">
     <title data-original="<?= htmlReady(PageLayout::getTitle()) ?>">
diff --git a/templates/layouts/base.php b/templates/layouts/base.php
index f8cd49021465b709cf545c354275a59e75801b30..388c4d1fc9fa094d3db4c64606b185e7dc81b9cb 100644
--- a/templates/layouts/base.php
+++ b/templates/layouts/base.php
@@ -44,9 +44,11 @@ $getInstalledLanguages = function () {
 
     return $languages;
 };
+
+$lang_attr = str_replace('_', '-', $_SESSION['_language']);
 ?>
 <!DOCTYPE html>
-<html class="no-js" lang="<?= htmlReady(strtr($_SESSION['_language'], '_', '-')) ?>">
+<html class="no-js" lang="<?= htmlReady($lang_attr) ?>">
 <head>
     <meta charset="utf-8">
     <title data-original="<?= htmlReady(PageLayout::getTitle()) ?>">