Вопрос

Я получаю странную синтаксическую ошибку в Firefox 3.0.10 / Leopard при использовании следующего html / css:

foo.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">

<html lang="en">
<head>
  <link rel="stylesheet" href="foo.css"/>
</head>
<body>
Foo
</body>
</html>

foo.css:

div {
  color: #FF0000;
}

и ошибка, которую я получаю в консоли, такова:

Error: syntax error
Source File: file://path/to/foo.css
Line: 1, Column: 1
Source Code:
div {

Это не CSS, потому что вставка его в тело встроенного тега СТИЛЯ работает нормально.Это не тег link, потому что указание HREF на css-файл stack overflow не выдает ошибку.Похоже на ошибку Firefox, но я не могу найти никакой документации по этому поводу.Является ли это известной проблемой и есть ли обходной путь?Это затрудняет отладку или проверку.

Спасибо.

Это было полезно?

Решение 2

Ответ оказался "Отключить расширения (это был YSlow)", как было предложено в комментариях.

Другие советы

Это выдает ошибку для первого символа в файле, который является буквой "d", что исключает для меня такие вещи, как "скрытые" специальные символы.Я бы предположил, что firefox по какой-либо причине не может открыть файл локально или что файл был случайно сохранен с кодировкой, которая, хотя и нормально отображается в диалоговом окне, не анализируется нормально.Возможно, он сохранен как Unicode по ошибке?

Если бы вы могли связать нас с реальным файлом, это помогло бы, поскольку ваш синтаксис (несмотря на то, что разметка не совсем корректна, но я не думаю, что это все) идеален в файле .css, который вы вставили.

Был ли файл написан в Windows?Возможно, вам нужно переформатировать возврат каретки / новую строку в mac os x.попробуйте запустить файл через что-то вроде dos2unix в командной строке.Также может быть рожденный ты ничего не видишь.

Я предполагаю, что есть какой-то скрытый символ, который, возможно, был случайно сохранен в файле.Попробуйте повторно сохранить файл CSS или повторно ввести первую строку, а затем повторно сохранить ее.

Если вы здесь из Google и работаете с локальным html, обратите внимание, что Firefox блокирует запросы к внешнему CSS, которые используют file:// протокол, потому что технически это запрос из разных источников.

Быстрое решение заключается в том, чтобы передать каталог, содержащий ваш сайт, на localhost поверх http://.Если у вас установлен интерпретатор python, вы можете сделать это очень легко:

python3 -m http.server 8080

Затем зайдите на localhost через свой браузер:

firefox localhost:8080

Вы можете заменить 8080 с любым другим портом.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top