relativer link einer .css-datei funktioniert nicht?!?
Andreas Schmitt
- css
0 CarstenP
Hallo alle zusammen,
lt. SelfHTML 8.0 sollte mit dem link-tag eine css-datei, die im gleichen Verzeichnis liegt, OHNE Pfadangabe referenziert werden können.
Ich habe also folgende Zeile in meinem XSL-File, das ich mit dem MSXML2-Prozessor verarbeite:
<link rel="stylesheet" type="text/css" href="file:Formate.css"/>
In meinem VB-Programm stehen folgende Zeilen:
...
Dim oXSLDocument As MSXML2.FreeThreadedDOMDocument40
...
Set oXSLDocument = New MSXML2.FreeThreadedDOMDocument40
...
Set oXSLTemplate.stylesheet = oXSLDocument
Set oProcessor = oXSLTemplate.createProcessor
With oProcessor
.input = oXMLDocument
.Transform
sHTMString = .output
End With
...
Die relative href-angabe versteht der Prozessor anscheinend nicht; nur durch eine absolute Pfadangabe kann ich das css-file "laden":
<link rel="stylesheet" type="text/css" href="file://server1/PROJECTS$/Programme/PrintTemplates/Formate.css"/>
Da das Projekt aber in verschiedenen Umgebungen (Intranet) laufen muß, die natürlich unterschiedliche Servernamen haben, ist das keine befriedigende Lösung!
Um Nachfragen vorzubeugen hier noch weiterer Versuche, die Datei relativ zu referenzieren, der auch fehlgeschlagen ist!
<link rel="stylesheet" type="text/css" href="file:./Formate.css"/>
WER WEISS RAT?
Danke im Voraus - Gruß Andreas
PS: Meine Entwicklungsumgebung (Stylus Studio) kann den relativen Link (1. und 2. Version) übrigens einwandfrei auflösen - die css-Datei wird beim "Preview" verwendet.
Hallo alleine,
<link rel="stylesheet" type="text/css" href="file:Formate.css"/>
^^^^^
Wie wäre es, wenn Du das file: einfach mal streichst, so daß nur noch href="Formate.css" übrigbleibt?
Viele Grüße
Carsten
Hallo Carsten
<link rel="stylesheet" type="text/css" href="file:Formate.css"/>
^^^^^
» Wie wäre es, wenn Du das file: einfach mal streichst, so daß nur noch href="Formate.css" übrigbleibt?
Hab ich zuerst probiert - dann tut' garnicht mehr... wie gesagt - die Applikation läuft in einem Intranet, d.h. die Dateien liegen auf einem lokalen Server.
Trotzdem Danke für den Versuch der Hilfe.
Vieleicht hat ja noch jemand anderes den entscheidenden Tip...
Viele Grüße
Andreas
Hi,
» Wie wäre es, wenn Du das file: einfach mal
» streichst, so daß nur noch href="Formate.css"
» übrigbleibt?
Hab ich zuerst probiert - dann tut' gar nicht mehr...
wie gesagt - die Applikation läuft in einem Intranet,
d.h. die Dateien liegen auf einem lokalen Server.
na und? Das aufrufende Dokument doch wohl auch, oder?
Wo auch immer die CSS-Datei liegt, sie wird sich ja wohl durch einen Pfadnamen beschreiben lassen. Und dann gibt es genau zwei Möglichkeiten:
a) dieser Pfadname liegt bereits innerhalb des URL-Universums Deines Webservers, dann hast Du den URL, den Du angeben mußt.
b) andernfalls wäre ein Mapping in der Konfiguration des Webservers nachzuholen.
Gerade in einem Intranet ist "file:" _ganz_ schlecht. Denn es bedeutet, daß jeder Benutzer den Pfad zu dieser Datei sehen können muß (Laufwerk-Mapping übers Netz usw.) - im Gegensatz zu einem HTTP-Zugriff, wo es ausreicht, wenn allein der Webserver auf diese Datei zugreifen kann. (Und noch schlechter ist, daß Du ja wohl auch noch kontrollieren mußt, wer von diesen vielen Benutzern die Datei schreiben können darf ...)
Für einen bandbreitenschonenden HTTP-Zugriff will man eben gerade _nicht_ eine "lärmendes" Windows-Netzwerkverbindung benötigen, die pausenlos Pakete durchs Netz schickt und alles vollmüllt.
Viele Grüße
Michael