Pergunta

Recebo um erro de sintaxe estranho no Firefox 3.0.10/Leopard ao usar o seguinte 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;
}

e o erro que recebo no console é:

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

Não é o CSS, porque colá-lo no corpo de uma tag STYLE embutida funciona bem.Não é a tag do link, porque apontar o HREF para o arquivo css do stack overflow não gera erro.Parece um bug do Firefox, mas não consigo encontrar nenhuma documentação sobre ele.Este é um problema conhecido e existe uma solução alternativa?Isso torna difícil depurar ou validar.

Obrigado.

Foi útil?

Solução 2

A resposta acabou sendo "Desativar extensões (era YSlow)", conforme sugerido nos comentários.

Outras dicas

Está dando o erro no primeiro caractere do arquivo, que é um 'd', o que exclui coisas como caracteres especiais "ocultos" para mim.Eu acho que o Firefox não é capaz de abrir o arquivo localmente por qualquer motivo, ou que o arquivo foi salvo acidentalmente com uma codificação que, embora seja exibida corretamente na caixa de diálogo, não é analisada normalmente.Talvez tenha sido salvo como Unicode por engano?

Se você pudesse nos vincular ao arquivo real, ajudaria, já que sua sintaxe (apesar da marcação não ser exatamente válida, mas não acho que seja isso) é perfeita no arquivo .css que você colou.

O arquivo foi escrito no Windows?Talvez você precise reformatar o retorno de carro/nova linha para o Mac OS X.tente executar o arquivo através de algo como dos2unix na linha de comando.Também poderia ser um bom você não está vendo.

Meu palpite é que há algum caractere oculto que pode ter sido salvo acidentalmente no arquivo.Tente salvar novamente o arquivo CSS ou digitar novamente a primeira linha e salvá-lo novamente.

Se você veio do Google e trabalha com html local, observe que o Firefox bloqueia solicitações de CSS externo que usam o file:// protocolo porque é tecnicamente uma solicitação de origem cruzada.

Uma solução rápida é servir o diretório que contém seu site para localhost http://.Se você tiver o interpretador python instalado, poderá fazer isso facilmente:

python3 -m http.server 8080

Em seguida, acesse localhost através do seu navegador:

firefox localhost:8080

Você pode substituir 8080 com qualquer outra porta.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top