Почему валидатор выдает ошибку при использовании символа | в строке с шрифтами от Google?

Как исправить ошибку, которую я получил от валидатора, связанную с использованием символа | в строке шрифтов на Google Fonts? Была ошибка: "illegal character in query: | is not allowed". Почему эта ошибка возникла, несмотря на то, что я видел такую же строку на других сайтах? Следует ли мне вообще обращать внимание на эту ошибку или нет?
  • 23 мая 2024 г. 7:50
Ответы на вопрос 2
Ошибка возникает потому, что символ | не является допустимым символом для запроса в URL. Валидатор сообщает об этой ошибке, потому что он проверяет правильность структуры вашего кода.

Для исправления ошибки можно заменить символ | на %7C, который является URL-кодированным значением для символа |. Таким образом, ваша строка с шрифтами от Google будет выглядеть примерно так:

```
https://fonts.googleapis.com/css?family=Font1%7CFont2
```

Это позволит избежать ошибки и корректно загрузить шрифты с Google Fonts на ваш сайт.

Хотя на других сайтах вы можете видеть использование символа | без проблем, лучше всегда следовать советам валидатора и исправлять возможные ошибки, чтобы ваш код был более надежным и совместимым с различными браузерами и устройствами.
Вроде нашел ответ. Код на сайте был устаревшим, и теперь шрифты с гугла копируются в другом коде. Пример кода, в котором валидатор отмечает ошибку в символе "|": 
<link rel="stylesheet" type="text/css" href="https://fonts.googleapis.com/css?family=Open+Sans:400,300,400italic,600,600italic,700,700italic,800,800italic,300italic|Roboto:100,100i,300,300i,400,400i,500,500i,700,700i,900,900i">


И пример кода без ошибки, который теперь копируется из шрифтов:
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel="stylesheet">
Похожие вопросы