Base-Tag im Header - wie weg?

Django, Flask, Bottle, WSGI, CGI…
Antworten
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Montag 19. September 2005, 17:05

Hi zusammen,

ich erstelle gerade ne Zope-Anwendung, in der ich einzelne Page-Templates miteinander verknüpfe. Wenn ich dann allerdings die Seite anzeigen will, pappt Zope in den Header noch ein Base-Tag. Das allerdings verhindert die Verwendung meines als PageTemplate gespeicherten CSS-Stylesheets. Nehm ich das Tag raus, funzt alles... (Firefox) Wie kann ich das Einfügen des Base-Tags unterbinden?

Thx & Gruß,

Dussel
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Montag 19. September 2005, 19:03

dusselmann hat geschrieben: ich erstelle gerade ne Zope-Anwendung, in der ich einzelne Page-Templates miteinander verknüpfe. Wenn ich dann allerdings die Seite anzeigen will, pappt Zope in den Header noch ein Base-Tag. Das allerdings verhindert die Verwendung meines als PageTemplate gespeicherten CSS-Stylesheets. Nehm ich das Tag raus, funzt alles... (Firefox) Wie kann ich das Einfügen des Base-Tags unterbinden?
Hi!

Das Base-Tag ist für Zope wichtig. Wenn es auch nur irgendwie möglich ist --> lass es drinn.

Dieses Base-Tag wird allerdings nur dann eingefügt, wenn es einen HEAD-Tag gibt. Du musst dich also nur darum kümmern, dass es in deinem Pseudo-CSS-File keinen HEAD gibt.

mfg
Gerold
:-)

PS: Schwören möchte ich jetzt nicht unbedingt auf das was ich soeben behauptet habe :-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Montag 19. September 2005, 19:07

:? :? :?

Dachte ich es mir doch... das war totale Scheiße was ich da geschrieben habe. Dieses Verhalten mit dem BASE-Tag kenne ich nur von Plone und nicht von Zope. Zope fügt NICHT automatisch einen BASE-Tag hinzu.

Erkläre doch mal wie du dein CSS-File anlegst.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Dienstag 20. September 2005, 07:15

Hi,

also mein CSS-File ist ein Macro, welches in ein "Sammel-CSS" eingefügt wird. Dieses CSS rufe ich dann über <link rel="stylesheet" type="text/css" tal:attributes="href here/styles_css/absolute_url"/> auf. Der gesamte Head-Bereich ist ebenfalls ein Macro, welches in die Seitenvorlage eingefügt wird.

Ich benutze NUR Zope! Es ist nix anderes installiert..!

Aber auch mit Base-Tag muss es doch z.B. bei Plone auch gehen, externe CSS zu verlinken oder?

In einer Maillingliste habe ich folgenden Tipp bekommen, weiß aber nicht, ob es damit zusammenhängt, bzw. obs funktioniert:
"href string:{here/c/css/absolute_url}/styles_css"

Thx & Gruß, Dussel
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Dienstag 20. September 2005, 07:45

dusselmann hat geschrieben: also mein CSS-File ist ein Macro, welches in ein "Sammel-CSS" eingefügt wird. Dieses CSS rufe ich dann über <link rel="stylesheet" type="text/css" tal:attributes="href here/styles_css/absolute_url"/> auf. Der gesamte Head-Bereich ist ebenfalls ein Macro, welches in die Seitenvorlage eingefügt wird.[...]
Hi Dussel!

Leider sind das nicht unbedingt die Informationen die ich mir erhofft hatte. Aber eines fällt mir auf. Dein Stylesheet besitzt **nicht** die Endung css.

Mit der Aussage "mein CSS-File ist ein Macro, welches in ein "Sammel-CSS" eingefügt wird" kann ich überhaupt nichts anfangen. Das musst du mir genauer erklären.

Wenn du dir den gerenderten Quellcode im Browser ansiehst, ist dann der Link zum Stylesheet korrekt? --> Link kopieren und direkt in die Adresszeile des Browsers einfügen. Es muss das Stylesheet angezeigt werden.

Steht die Site irgendwo im Internet, so dass man sich mal ansehen kann, was an den Browser geschickt wird?

Wie Plone das mit den Styles handhabt, siehst du in Plone in der Datei /<PLONE>/portal_skins/plone_templates/header

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Dienstag 20. September 2005, 08:08

ok, noch mal genauer:

ich habe ein PageTemplate (PT) index_html:

Code: Alles auswählen

<html>
<head metal:use-macro="here/head_html/macros/head_info">Kopf</head>
...
</html>
Dieses Head-Macro sieht so aus:

Code: Alles auswählen

<head metal:define-macro="head_info">
  <title tal:content="here/title">Title</title>
  <link rel="stylesheet" type="text/css" tal:attributes="href here/styles_css/absolute_url"/>
</head>
Das styles_css:

Code: Alles auswählen

<s metal:use-macro="here/styles_main/macros/main_styles">asdf</s>
styles_main:

Code: Alles auswählen

<style metal:define-macro="main_styles" tal:omit-tag"">
... CSS-Definitionen ...
</style>
Alle Dateien sind als PT in Zope angelegt. Ich habe das Beispiel aus dem Zope-Buch von Galileo Computing übernommen. Laut Buch sollte es also so funktioniert. Im gerenderten HTML-Code steht wirklich ein absoluter Pfad zum CSS-Stylesheet drin und wenn ich den aufrufe, bekomme ich dieses auch im Browser angezeigt.

Das Base-Tag sieht so aus:
<base href="http://localhost:9673/a/b/" />

Und der CSS-Link ist wie gesagt absolut..

Gruß, Dussel

PS: Site ist nicht online...
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Dienstag 20. September 2005, 15:04

Hi Dussel!

Ich kann wirklich keinen Fehler entdecken. Mit Ausnahme eines Leerzeichens, das in dieser Zeile fehlt:

Code: Alles auswählen

<link rel="stylesheet" type="text/css" tal:attributes="href here/styles_css/absolute_url"/>
Vor /> sollte normalerweise ein Leerzeichen hin.

Plone macht das mit dem Stylesheet ein wenig anders. Vielleicht sind deine Probleme gelöst, wenn du es mal so probierst.

Code: Alles auswählen

<style type="text/css" media="screen"
    tal:content="structure string:<!-- @import url($portal_url/plone.css); -->">
</style>
Natürlich musst du vorher $portal_url/plone.css durch dein CSS ersetzen. Achte aber auch darauf, dass dein CSS-File auch wirklich die Endung ".css" hat. Das macht bei mir mit dem Firefox wirklich einen Unterschied.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Dienstag 20. September 2005, 18:03

ok, jetzt verzweifle ich langsam. folgender Code im head:

Code: Alles auswählen

<head metal:define-macro="head_info">
<title>Titel</title>

<style type="text/css" media="all"><!-- @import url(http://localhost:9673/css/styles.css); --></style>

</head>
bzw.

Code: Alles auswählen

<head metal:define-macro="head_info">
<title>Titel</title>

<style type="text/css" media="screen"><!-- @import url(http://localhost:9673/css/styles.css); --></style>

</head>
Im HTML-Code sieht das dann so aus:

Code: Alles auswählen

<head>
<base href="http://localhost:9673/" />

<title>Titel</title>

<style type="text/css" media="screen"><!-- @import url(http://localhost:9673/css/styles.css); --></style>

</head>
und trotzdem wird das Stylesheet nicht verwendet... :(
Was mach ich falsch???

Gruß, Dussel
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Mittwoch 21. September 2005, 13:06

Hi,

hat keiner ne Idee? Liegts vielleicht am Firefox??

Thx & Gruß, Dussel
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Mittwoch 21. September 2005, 13:31

dusselmann hat geschrieben:hat keiner ne Idee? Liegts vielleicht am Firefox??
Hi Dussel!

Wende dich doch mal an eine Newsgroup, die sich mit dem Thema HTML beschäftigt. Vielleicht hat auch jemand vom DZUG einen Hinweis für dich.

http://de.selfhtml.org/css/formate/einbinden.htm
http://www.zope.de/kommunikation

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Benutzeravatar
dusselmann
User
Beiträge: 70
Registriert: Donnerstag 28. Juli 2005, 12:47
Kontaktdaten:

Samstag 24. September 2005, 10:49

Hi,

also das ganze als File gespeichert mit den richtigen Meta-Infos hat geklappt. Danke!

Gruß, Dussel
Antworten