Kalle_B: Opera und @page

Hallöle,

ich habe viele Listen zu drucken. Einige sollen hoch-, andere querkant sein. Möchte dem User gerne die manuelle Umstellung im Browser abnehmen, aber es funzt nicht.

Laut http://de.selfhtml.org/css/eigenschaften/printlayouts.htm#page sollte Opera die @page-Angabe verstehen, aber die folgende Angabe wird ignoriert, wenn im Browser "hochkant" vorgewählt wurde:
<style type="text/css">
 @page{size:landscape}
...

auch dieses klappt nicht:
<style type="text/css" media="print">
 @page{size:landscape}
...
</style>

Bei der Druckansicht wird zwar das Papier landscape gezeigt, aber auf dem Papier nur der portrait- Bereich gefüllt (also großer rechter Rand). Und beim Drucken ist es dann wieder hochkant wie die Voreinstellung.

Dieses funktioniert:
@page { size:21.0cm 14.85cm; margin:5.7cm 2cm 1.4cm 1cm; }

Muss das Zeichen @ auf Stelle 1 in der Zeile stehen? Das kann ich zur Laufzeit nicht leisten, weil das für das PHP- Programm das Zeichen ist, diese Zeile auszublenden.

Lieben Gruß, Kalle

  1. Yerf!

    Hm, ich kann das Problem hier bei mir (Opera 9.20, ich denke aber das ging auch schon mit früheren Versionen) nicht nachvollziehen. Egal, ob der Drucker auf Hoch- oder Querformat steht, die Druckvorschau ist immer quer und nutzt die volle Breite. Beim Drucken im Hochformat ist das ganze rechts abgeschnitten und unten ein freier Platz. Wenn ich beim Druck auf quer stelle bekomme ich genau das richtige Ergebnis: einen querformatigen Ausdruck, der das volle Blatt nutzt.

    Mein CSS:

    <style type="text/css">
      @page { size:landscape; }
    </style>

    Gruß,

    Harlequin

    1. Knoff!

      Hm, ich kann das Problem hier bei mir (Opera 9.20, ich denke aber das ging auch schon mit früheren Versionen) nicht nachvollziehen.

      Hatte Opera 7.x, habe eben erhöht auf 9.20

      Geht immer noch nicht, jetzt hat sie (Oper -a ist weiblich?) aber folgende Macke. Ein zentrierter Tisch (table) wird auf 100% Breite gestreckt, die Daten stehen nicht in der Mitte. Noch schlimmer, der Grfik wird in einem td so viel Platz eingeräumt, dass der Text im anderen td in zu viele Zeilen umgebrochen wird:

      <table class=mb05 border=1 align=center>
        <tr>
          <td valign=bottom>
          <a href="/_2007/tm_manager.php?zp=p132&kw=Kalle07&ll=1178780489&adr_id=2479">
          <img src='img/logo_bfp_sw.gif' border=0 title='Seite aktualisieren'
          style='height:5em' alt='Logo Fuhrpark-Forum'></a>
          </td>

      <td width=20>&nbsp;</td>
          <td valign=bottom>
         <h1>Leubner,  Romy &nbsp; <span class=em06>Adva AG Optical Networking, Martinsried</span></h1>
          <p class=mb05>Terminplan gedruckt am 10.05.07 16:41 &nbsp; <span id=info></span></p>
          <p>Fragen? &nbsp; <b>Terminplan-Hotline: &nbsp; 06131 / 62 77 617</b>, auch w&auml;hrend des Forums g&uuml;ltig!</p>
          </td>
        </tr>
        </table>

      Kalle

      1. Yerf!

        Hatte Opera 7.x, habe eben erhöht auf 9.20

        Geht immer noch nicht, jetzt hat sie (Oper -a ist weiblich?) aber folgende Macke. Ein zentrierter Tisch (table) wird auf 100% Breite gestreckt, die Daten stehen nicht in der Mitte. Noch schlimmer, der Grfik wird in einem td so viel Platz eingeräumt, dass der Text im anderen td in zu viele Zeilen umgebrochen wird:

        Hm... so große Unterschiede zwischen den 2 Versionen deuten darauf hin, dass die Seite evtl. im Quirksmode dargestellt wird (Der 7er hat ziemlich stark versucht den IE nachzubauen). Gib am besten einen vollständigen Doctype an, dann wird das Ergebnis besser vorhersagbar.

        <table class=mb05 border=1 align=center>
          <tr>
            <td valign=bottom>
          [...]

        Hm, da kann man jetzt nicht viel sehen, außer dass hier noch alte Atribute mit CSS gemischt werden. Versuch mal alle Angaben per CSS zu machen und hilf notfalls mal mit table-layout:fixed nach, wenn Opera dann immer noch zuviel selbst reininterpretiert. Gerade was Tabellen angeht nimmt sich Opera sehr viele Freiheiten, dass war für mich der Grund auf Tabellen fürs Layout zu verzichten lange bevor ich die ganzen Vorteile von CSS kannte... ;-)

        PS: Für mehrspaltige Listen sind natürlich Tabellen die erste Wahl, aber mit CSS und etwas Probieren sollte man die auch im Opera halbwegs hübsch hinbekommen (Auch meine Seite mit der ich das vorhin nochmals Probiert hab besteht aus mehreren Tabellen)

        Gruß,

        Harlequin