Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Woinch

CSS diferente se não tiver JS

Recommended Posts

Olá pessoal, alguem poderia me dizer se existe um hack ou alguma forma de usar uma folha de estilos diferente para se o browser não possuir JS?Qual o código que ficaria melhor eu usar?Obrigado.Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se dá:

<noscript><link rel="stylesheet" href="estilo_sem_js.css" type="text/css" /></noscript>

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se dá:

<noscript><link rel="stylesheet" href="estilo_sem_js.css" type="text/css" /></noscript>
[]'s
Essa dica não dá não, #INSIDE#, pq a tag <noscript> deve ser colocada após a tag <body>, e se você tentar colocar a tag <link (...)> após a tag <body>, seu documento não valida, pois essa última não pode vir depois de <body>...

 

Há um tempo atrás tentei usar esse tal de <noscript> com uma tag <meta (...)> para redirecionar a página caso o javascript estivesse desativado... Mas o problema é justamente o mesmo da tag <link (...)>: uma tag <meta (...)> não pode aparecer depois da tag <body>...

 

Ok? Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

É, então complica mesmo ;)[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode fazer assim:- Inclua o css pra sem javascript normalmente numa tag link na página- Abaixo dessa tag link adicione um javascript que altere o link do CSS para o CSS pra com javascriptAssim se a pessoa tiver javascript ele irá "sobrescrever" o outro css, e se não ficará o CSS pra sem javascript[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu testei, mas não deu certo, pq ele diz que o <style> não pode ficar ali (mesmo ele estando dentro de um script JS, que por sua vez está dentro da <head>)...

 

Terá que encontrar outro meio... (E se encontrar, por favor, nos avise pois sua situação é muito interessante de se conhecer uma alternativa)...

 

Abraço! E boa sorte!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Passei o cambão no validador... Acho que acabo de criar um "hack" para validar, experimentem:

 

<script type="text/JavaScript">  document.write('<'+'link rel="stylesheet" type="text/css" media="screen, print" href="css/layout.css" />');</script>

Comigo validou!

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites
<head><script type="text/javascript"><!--  document.write('<style type="text/css"><!--@import url("http://www.lanternaverde.com.br/estilo.css");--></style>');// --></script></head>

Compartilhar este post


Link para o post
Compartilhar em outros sites

<head><script type="text/javascript"><!--  document.write('<style type="text/css"><!--@import url("http://www.lanternaverde.com.br/estilo.css");--></style>');// --></script></head>

Ah sim... Em JS não podemos ter quebra de linha nessa situação... Por isso tudo "inline"... (É isso né?)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nem tanto por isso, mas o validador não gosta de JS inline, e colocando <!-- e // --> o validador ignora esse js, sem necessidade de quebrar linhas, colocar + aqui e ali...[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nem tanto por isso, mas o validador não gosta de JS inline, e colocando <!-- e // --> o validador ignora esse js, sem necessidade de quebrar linhas, colocar + aqui e ali...

 

[]'s

Humm... Interessante... Aprendendo aos pouquinhos esse tal de JS... rsrsrs... Mas #INSIDE#, me responde uma coisa (me desculpe utilizar este tópico para fazer perguntas, mas já que estamos com exemplos aqui...), vejamos esse exemplo:
<head><script>  document.write('<style type="text/css">	<!--	@import url("http://www.lanternaverde.com.br/estilo.css");	//--></style>');</script></head>
Vamos supor que eu tenha feito dessa forma, para deixar o código mais organizado, facilita a leitura do mesmo e tals (observe que coloquei o barra-barra como você indicou)... Isso está certo? A pergunta é: posso ter quebras de linha em JS normalmente? Pq em ASP, quando queremos deixar uma linha de comando em duas ou mais linhas (às vezes ele é muito extenso), podemos colocar uma underline na linha de cima e continuar o código na linha debaixo... Em JS não preciso ter nada desse tipo? Ele funciona normalmente com o "enter"?

 

Vlw pelas dicas!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só quebre linha quando for necessário, naum quebre linha só pra ficar mais legível http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.