rafagets 1 Denunciar post Postado Maio 6, 2011 ola galera é o seguinte. tenho um arquivo css e nele contem esse codigo * { border: 0; margin: 0; padding: 0; } /* =Basic HTML, Non-essential ----------------------------------------------------------------------*/ a { text-decoration: none; } body { background: #fff; color: #777; margin: 0 auto; position: relative; font-size: 16; } h1 { background: inherit; border-bottom: 1px dashed #ccc; color: #933; font: 17px Georgia, serif; margin: 0 0 10px; padding: 0 0 5px; text-align: center; } p { clear: both; font: 10px Verdana, sans-serif; padding: 10px 0; text-align: center; font-size: 24px; } p a { background: inherit; color: #777; } p a:hover { background: inherit; color: #000; } /* =Hoverbox Code ----------------------------------------------------------------------*/ .hoverbox { cursor: default; list-style: none; } .hoverbox a { cursor: pointer; } .hoverbox a .preview { display: none; } .hoverbox img { background: #fff; border-color: #aaa #ccc #ddd #bbb; border-style: solid; border-width: 1px; color: inherit; padding: 2px; vertical-align: top; width: 121px; height: 96px; } .hoverbox li { background: #eee; border-color: #ddd #bbb #aaa #ccc; border-style: solid; border-width: 1px; color: inherit; display: inline; float: left; margin: 3px; padding: 5px; position: relative; } .hoverbox .preview { border-color: #000; width: 250px; height: 200px; color: #F00; } ai então eu pego o navegador do cliente e edito assim por exemplo: <?php if (preg_match("/Chrome/", $_SERVER['HTTP_USER_AGENT'] )) { ebackground: inherit; border-bottom: 1px dashed #ccc; color: #933; font: 25px Georgia, serif; margin: 0 0 8px; padding: 0 0 5px; text-align: center; } else { background: inherit; border-bottom: 1px dashed #ccc; color: #933; font: 17px Georgia, serif; margin: 0 0 10px; padding: 0 0 5px; text-align: center; } ?> tem como fazer? ou há outra maneira? Compartilhar este post Link para o post Compartilhar em outros sites
Nandel 1 Denunciar post Postado Maio 7, 2011 Não tem como rodar php dentro de arquivos css. Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Maio 7, 2011 Deixe o seu CSS do jeito que está, sem alteração. Anexe ele na página PHP, usando <link>. Após isso coloque o seguinte: <?php if (preg_match("/Chrome/", $_SERVER['HTTP_USER_AGENT'] )) { ?> <style> h1 { font: 25px Georgia, serif; margin: 0 0 8px; } </style> <?php } ?> Pronto, o seu hack para o Chrome. Compartilhar este post Link para o post Compartilhar em outros sites
criatividade zero 17 Denunciar post Postado Maio 7, 2011 ou há outra maneira? sim, a maneira correta:) INDEX.PHP [TOPO] if (preg_match("/Chrome/", $_SERVER['HTTP_USER_AGENT'] )) { echo '<link rel="stylesheet" type="text/css" href="navegador_X.css" />'; } else { echo '<link rel="stylesheet" type="text/css" href="navegador_Y.css" />'; } sempre use folhas css ou js, NUNCA coloque o codigo CSS ou JS na página, e sempre entre a tag <head>...</head> assim, basta você alterar as folhas que necessita sem precisar mudar os srquivos de programação Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Maio 7, 2011 @criatividade zero Mas aí se ele fizesse uma mudança em um dos seletores, teria que repeti-la no outro arquivo. Se essa for a maneira correta, não quero nem imaginar a errada... <_< Compartilhar este post Link para o post Compartilhar em outros sites
criatividade zero 17 Denunciar post Postado Maio 7, 2011 em apenas uma única página entra o if $_SERVER['HTTP_USER_AGENT'] carregando um css correspondente qualquer alteração simpesmente é feita no css <div id='topo'> oi mundo dificil </div> ele pode ter um estilo diferente para cada navegador, alterando apenas 1 unica coisa não quero nem imaginar a errada... <_< a forma errada é a que você postou - CSS dentro de HTML Mas aí se ele fizesse uma mudança em um dos seletores, teria que repeti-la no outro arquivo. pelo visto você deve programar em uma unica pagina tudo que tem direito, fazendo aquele mix danadão estude web standards Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Maio 7, 2011 @criatividade zero Você acha correto/bom/elegante manter dois arquivos CSS sendo que será usado apenas um só para não ter de usar estilos dentro do HTML? Pode até haver alguma recomendação, algo a se evitar. Mas não tem jeito... Às vezes somos obrigados até mesmo a usar estilos inline e eu não vejo nenhum problema em usar alguns estilos dentro do HTML. No mais, acho bem melhor que manter duas folhas de estilos, com certeza. Compartilhar este post Link para o post Compartilhar em outros sites
criatividade zero 17 Denunciar post Postado Maio 7, 2011 No mais, acho bem melhor que manter duas folhas de estilos, com certeza. então deixemos que o colega do topico decida quals forma fazer recomendação ha aos montes, basta procura-las não é dificil aplica-las eu não mantenho nada no meu html que não seja <xx></xx> todo js, css fica fora - no lugar que deve imagina você implementar um site imenso com mais de 500 paginas, categorias e sub, sessoes, inumeros diretorios... prefere varrer pasta por pasta pra alterar um color=0000 ou alterar um css? Você acha correto/bom/elegante manter dois arquivos CSS sendo que será usado apenas um só para não ter de usar estilos dentro do HTML? nao tenho apenas uma folha de estilo, divido em varios e varios css's tudo separado, vou direto no arquivo especifico quando preciso mudar alguma coisa Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Maio 7, 2011 A unica maneira correta de desenvolver css, é não precisar desses hacks. use um css reset, um doctype válido, e valide eles. pronto. Passou disso é gambiarra. Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Maio 7, 2011 @William Bruno Na teoria, beleza. mas na prática... quando você precisa que o site rode no IE (ás vezes até no IE6), no Firefox, no Chrome... precisa fazer escolhas. Ficar 100% purista também tem seu custo, como no exemplo aí do @criatividade zero, ter de manter dois arquivos CSS com praticamente a mesma coisa. Mas se ele acha que compensa... Compartilhar este post Link para o post Compartilhar em outros sites
Bruno Augusto 417 Denunciar post Postado Maio 7, 2011 Eu também acho válido gerar o CSS com PHP, bastando enviar um cabeçalho com o tipo do arquivo, no caso, text/css Assim você pode fazer várias configurações, talvez até uma para cada navegador e ao mesmo tempo manter um único CSS, já que se determinada condição se satisfizer, o valor X será usado, se não, vai o Y, o Z e etc... E vocxê ainda pode ter funçõeszinhas, externas ou não, do tipo isIE(), isChrome(), isOpera()... para poder criar as regras CSS com simples ternários. Compartilhar este post Link para o post Compartilhar em outros sites
rafagets 1 Denunciar post Postado Maio 7, 2011 INDEX.PHP [TOPO] if (preg_match("/Chrome/", $_SERVER['HTTP_USER_AGENT'] )) { echo '<link rel="stylesheet" type="text/css" href="navegador_X.css" />'; } else { echo '<link rel="stylesheet" type="text/css" href="navegador_Y.css" />'; } o topco foi meio quente em galera... rsrsrs. mas na minha umilde opinião de um programador com pouca bagagem ainda, acho que dois css esta mais valido para que eu queria... igual o colega ai encima disse. obrigados a todos pelas respostas... não sei o que seria de mim, sem voces do imasters... :) Compartilhar este post Link para o post Compartilhar em outros sites
criatividade zero 17 Denunciar post Postado Maio 7, 2011 o topco foi meio quente em galera... rsrsrs. troque o quente por produtivo :D Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Maio 8, 2011 @William Bruno Na teoria, beleza. mas na prática... na prática eu faço isso que disse. Evito hacks, e desenvolvo para ie6, chrome... e outros tantos sem precisar desse tipo de coisa. sou FrontEnd na minha essencia, já recortei mais de 110 layouts de sites, e nunca precisei desse tipo de artimanha. é possível, só depende do nível de conhecimento, em HTML e CSS. Compartilhar este post Link para o post Compartilhar em outros sites