NIKESLB 0 Denunciar post Postado Junho 18, 2011 Boas, comecei a usar include para a estrutura do meu site, mas tenho um problema com a CSS ou outro. Por exemplo guardei no header.php a parte inicial como html, head e parte do inicio do corpo. E lá tenho a linha do css: <link href="/css.css" rel="stylesheet" type="text/css" /> Eu chamo o header assim: <?php include ($_SERVER['DOCUMENT_ROOT'].'/include/header.php'); ?> Quando abro as páginas que estão na pasta raiz, tudo bem. Se abrir páginas que estão numa sub pasta da raiz, o CSS é aplicado mas vem com alguns bugs. Por exemplo: o topo do site ficou mais ao lado, certos textos ficaram diferentes (se calhar alteração do tipo de letra). Porque ficou assim e como poderei resolver este problema para que fica de maneira igual para todas as páginas? Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Leal 4 Denunciar post Postado Junho 18, 2011 Se o problema eh o css que não está carregando, tente colocar a url completa no href na tag link do css ou tambm pode usar a tag <base>. <link href="http://localhost/site-teste/css.css" rel="stylesheet" type="text/css" > ou com <base> <base href="http://localhost/site-teste/"> <link href="css.css" rel="stylesheet" type="text/css" > ps.Se usar a tag base todos os href da sua página terão como prefixo o "http://localhost/site-teste/" Compartilhar este post Link para o post Compartilhar em outros sites
NIKESLB 0 Denunciar post Postado Junho 19, 2011 testei mas nada. Venho de encontrar a razão do problema, mas é estranho e não sei como resolver. Na verdade se acrescentar a linha: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> ... nos ficheiros de sub pastas, antes do include header funciona. O que é estranho porque os ficheiros da pasta raíz não contém esta linha (sem contar a do header.php) e dá a mesmo. Verifiquei depois o código fonte e apareça 2 vezes a linha do Doctype :S É estranho, não devia haver 2 linhas, ou pelo menos reconhecer a linha doctype do include header. Queria mesmo a linha no include e não por em cada ficheiro (para não haver 2 linhas iguais). Já estive a procurar um pouco pela Net mas não encontrei nada que resolvesse este problema :S Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Leal 4 Denunciar post Postado Junho 19, 2011 Desculpe mas acho q não poderei ajuda-lô pois nunca aconteceu comigo isto. Acho que para achar uma solução só olhando seus arquivos mesmo... Compartilhar este post Link para o post Compartilhar em outros sites
NIKESLB 0 Denunciar post Postado Junho 19, 2011 Bem é o normal mesmo. Index.php <?php include ($_SERVER['DOCUMENT_ROOT'].'/include/header.php'); ?> <!--banner pagina--> <img class="border" src="" /> <br /> </div> <br /> <!--Conteudo--> <?php include ($_SERVER['DOCUMENT_ROOT'].'/include/footer.php'); ?> header.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <link href="/css.css" rel="stylesheet" type="text/css" /> ... Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo Leal 4 Denunciar post Postado Junho 19, 2011 index.php <?php //Estes documentos ficariam na raiz do site include ($_SERVER['DOCUMENT_ROOT'].'/header.php'); include ($_SERVER['DOCUMENT_ROOT'].'/body.php'); include ($_SERVER['DOCUMENT_ROOT'].'/footer.php'); ?> header.php <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pt" lang="pt"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link href="http://localhost/site/css.css" rel="stylesheet" type="text/css" /> <title><title> </head> body.php <!--banner pagina--> <img class="border" src="" /> <br /> </div> <br /> <!--Conteudo--> <?php include ($_SERVER['DOCUMENT_ROOT'].'tela/contato.php'); ?> Tomara que isto te ajude. Compartilhar este post Link para o post Compartilhar em outros sites
NIKESLB 0 Denunciar post Postado Junho 19, 2011 infelizmente, foi dar ao mesmo. Não reconhece o doctype apesar que no código fonte estar lá. Mais alguma ideia? Compartilhar este post Link para o post Compartilhar em outros sites
vonzuben 12 Denunciar post Postado Maio 15, 2012 verifica o caminho do css se está correto <link rel="stylesheet" type="text/css" href="css.css" /> e subpasta <link rel="stylesheet" type="text/css" href="subpasta/css.css" /> Compartilhar este post Link para o post Compartilhar em outros sites