xml-stylesheets ?
S.
- css
0 Cheatah0 S.
0 Thomas Meinike
Kann mir vieleicht jemand sagen wo ich weitere informationen (auf deutsch)zu folgender möglichkeit finde css in eine Seite einzubauen?
<?xml-stylesheet alternate="no" title="..." media="screen, tv, projection" type="text/css" href="/style/layout.css"?>
........
S.
Hi,
Kann mir vieleicht jemand sagen wo ich weitere informationen (auf deutsch)zu folgender möglichkeit finde css in eine Seite einzubauen?
was für Informationen suchst Du denn, und warum dürfen diese nicht in der Fachsprache sein?
Cheatah
was für Informationen suchst Du denn, und warum dürfen diese nicht in der Fachsprache sein?
Wie ich solche stylesheets einbauen kann, das sie anschließend auch funktionieren. Welche Vor und Nachteile sie haben usw. Es gehen natürlich auch Seiten auf Englisch, bevorzuge lediglich deutschsprachige Seiten.
Hi,
Wie ich solche stylesheets einbauen kann, das sie anschließend auch funktionieren. Welche Vor und Nachteile sie haben usw.
das Unterscheidet sich nicht von CSS in HTML, bis auf die Form der Einbindung, die Du selbst nanntest.
Cheatah
Hallo,
Wie ich solche stylesheets einbauen kann, das sie anschließend auch funktionieren. Welche Vor und Nachteile sie haben usw.
Was heißt "solche stylesheets"? xml-stylesheet ist eine Processing Instruction (PI) = Verarbeitungsanweisung fuer die Darstellung von XML-Dokumenten. Das kann ein "klassisches" CSS sein oder ein XSL(T)-Stylesheet zur Umwandlung der Inhalte in ein Ausgabeformat wie HTML.
Die Verwendung von CSS zur Formatierung von XML-Inhalten funktioniert nur sehr eingeschraenkt und ist stark von den Browsern abhaengig, außerhalb von IE und Mozilla/Firefox laeuft da wenig.
Hier mal ein Auszug aus einem Unterrichtsbeispiel, welches so auch nur mit Mozilla-Derivaten passabel funktioniert:
XML (nur ein Datensatz):
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet href="media_collection.css" type="text/css"?>
<!DOCTYPE media_collection SYSTEM "media_collection.dtd">
<media_collection>
<item medium="LP" type="audio">
<name>Einstuerzende Neubauten</name>
<title>Haus der Luege</title>
<style>Indie</style>
<year>1989</year>
<coverimage>cover/neubauten.jpg</coverimage>
<comment>Genial</comment>
<tracks number="8">
<track nr="1" time="2:07">Prolog</track>
<track nr="2" time="5:44">Feurio!</track>
<track nr="3" time="2:08">Ein Stuhl in der Hölle</track>
<track nr="4" time="3:59">Haus der Lüge</track>
<track nr="5" time="0:30">Epilog</track>
<track nr="6" time="12:23">Fiat Lux / Manifestspiele / Hirnlego</track>
<track nr="7" time="3:57">Schwindel</track>
<track nr="8" time="3:48">Der Kuss</track>
</tracks>
</item>
<!-- weitere item-Elemente -->
</media_collection>
DTD (media_collection.dtd):
<!ELEMENT media_collection (item*)>
<!ELEMENT item (name,title,style?,price?,year?,coverimage?,comment?,tracks)>
<!ELEMENT name (#PCDATA)>
<!ELEMENT title (#PCDATA)>
<!ELEMENT style (#PCDATA)>
<!ELEMENT price (#PCDATA)>
<!ELEMENT year (#PCDATA)>
<!ELEMENT coverimage (#PCDATA)>
<!ELEMENT comment (#PCDATA)>
<!ELEMENT tracks (track+)>
<!ELEMENT track (#PCDATA)>
<!ATTLIST item medium (CD|DVD|MD|MC|LP|VHS) #REQUIRED
type (audio|video) #REQUIRED
<!ATTLIST tracks number CDATA #IMPLIED>
<!ATTLIST track nr CDATA #IMPLIED
time CDATA #IMPLIED
CSS (media_collection.css):
media_collection
{
display: table;
margin: 20px auto 20px auto;
border-collapse: collapse;
}
item
{
display: table-row;
border-collapse: collapse;
}
name
{
color: #00C;
background-color: #FFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 24px;
display: table-cell;
padding: 10px;
border: 1px solid #F00;
border-collapse: collapse;
border-spacing: 5px;
}
title
{
color: #090;
background-color: #FFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 18px;
display: table-cell;
padding: 10px;
border: 1px solid #F00;
border-collapse: collapse;
}
style,price,year,coverimage,comment
{
display: none; /* ausgeblendete Inhalte */
}
tracks
{
display: table-cell;
background-color: #FFF;
border-collapse: collapse;
border: 1px solid #F00;
padding: 10px;
}
track
{
display: list-item;
list-style-type: none;
list-style-position: inside;
font-weight: bold;
padding: 0px 10px 0px 10px;
}
track:before
{
content: attr(nr) ". ";
}
track:after
{
content: " [" attr(time) "]";
}
Dieses Beispiel zeigt auch die Grenzen dieser Technik auf. Von der Lauffaehigkeit im IE ganz abgesehen, waere es praktisch, auch die Cover-Bildnamen auszuwerten und das jeweilige Bild mit CSS-Mitteln einzubinden, was aber scheitert.
content: url(cover.gif);
wuerde ein festes Bild cover.gif einbinden.
content: url(coverimage);
hilft dagegen nicht, da nur der Textinhalt erscheint.
Mit XSLT kommt man da viel weiter, weil einfach ein img-Element mit src-Attribut erzeugt werden kann.
MfG, Thomas
Hallo,
Kann mir vieleicht jemand sagen wo ich weitere informationen (auf deutsch)zu folgender möglichkeit finde css in eine Seite einzubauen?
<?xml-stylesheet alternate="no" title="..." media="screen, tv, projection" type="text/css" href="/style/layout.css"?>
In der Spezifikation:
Associating Style Sheets with XML documents Version 1.0
bzw.
Verknüpfen von Style Sheets mit XML-Dokumenten Version 1.0
MfG, Thomas