Nespravny vystup po spracovani template
- misiak
- Člen | 28
bezim na 0.8 stable pre PHP 5.2
problem je, ze kazda aplikacia v nette ktoru som napisal… mi vo firefoxe ked kliknem na show generated source prehodi link stylesheetu z head do body, tym padom mi to odsadi web akoby som mal nastaveny margin-top… konkretne tu je kod vygenerovany
<html xml:lang="en" xmlns="http://www.w3.org/1999/xhtml" lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta http-equiv="Content-Language" content="en"><meta name="description" content="Nette Framework example"><title>title</title></head><body>
<link rel="stylesheet" type="text/css" media="screen" href="/FriendTasteChart/root/css/site.css">
<div id="content">
<div id="header">
<h1>Friend Taste Chart</h1>
</div>
</div>
</body></html>
zatial co kod stranky v @layout.html je
<!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="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Language" content="en" />
<title>title</title>
<link rel="stylesheet" type="text/css" media="screen" href="{$baseUri}css/site.css" />
</head>
<body>
<div id="content">
{include $content}
</div>
</body>
</html>
nerozumiem tomu pretoze ak som skusil niektory z examples k nette… tak tie sa zobrazuju spravne, ale kod ktory napisem ja stale nahodi link so stylesheetom do body…
mohol by mi niekto pomoct prosim?
- PetrP
- Člen | 587
V první řadě jaký typ template používáš?
Presenter::$oldLayoutMode=true;
je v 0.8 defaultní.
Jaké máš zaregistrované další filtry, kromě
CurlyBracketsFilter
?
Vymaž si cache (v nette a raději i v prohlížeči).
Podle toho co vidím se ale používá úplně jinej layout. Koukni jestli
někde jinde není nějakej které by odpovídal výstupu, popřípadě jestli
nenastavuješ (Presenter::setLayout()
) na něco jiného.
Jen eště dotaz, z toho co píšeš to vypadá že se ti to děje jen v Firefoxu a jen po kliknutí na ‚show generated source‘. Je to tak?
//edit
V případě podobných šílených problémů, je nejlepší ořezat aplikaci
na minimum a pak jí sem hodit, aby se člověk mohl podívat co vlastně
myslíš. a hlavně při takovýmhle ořezávání dost často na problém
přijdeš sám.
Editoval PetrP (4. 6. 2009 14:27)
- misiak
- Člen | 28
nepouzivam OldLayoutMode a z filtrov mam zaregistrovany len CurlyBracketsFilter, cache som skusal vymazat no nemalo to vplyv. Stranka sa mi zobrazuje v kazdom prehliadaci zle (IE8, Opera, Chrome, FX 3.5) na localhoste, no nedavno mi to este nerobilo.
Zaujimave je ze je takmer prazdna je tam len layout s jednym divom uprostred ktory je zarovnany na stred lenze z hora sa mi umelo odsadi a neviem preco. Css ma padding a margin na 0 a je to validne a ked som skusal napriklad Akrabat z examples tak ten sa zobrazuje spravne.
Nerozumiem preco mi to spravi to umele odsadenie.
prikladam screeny z mojej app
http://www.kvasnicak.info/chyba1.jpg – ako vidiet vo
firebug tak link so stylesheet je v body a nie v head
http://www.kvasnicak.info/chyba2.jpg – vo firebug je
zdrojovy kod, tak ako je napisany v editore
a screen ze acrabat
http://www.kvasnicak.info/akrabat1.jpg – tu je akrabat
ktory ma link so stylesheet v head a nie v body, cize spravne
a este moja aplikacia… je to totalne najmensia osekana verzia
http://www.kvasnicak.info/…steChart.rar
Editoval misiak (4. 6. 2009 15:45)
- Patrik Votoček
- Člen | 2221
Tak jsem to rozchodil… A hned po spuštění:
InvalidStateException
Cannot send header after HTTP headers have been sent (output started at C:\xampp\htdocs\FriendTasteChart\app\bootstrap.php:1).
najel jsem před <?php
v bootstrapu a zmáčnul párkrát
backspace. Refresh a je to ok (link je v head). Takže máš v bootstrapu
před <?php
asi nějáký UTFkový „půlznak“.