2009-06-04 18 views
14

Gdzie robię źle?Jak ustawić marginesy 0 w podglądzie wydruku?

Jest to normalny podgląd wydruku: this is the first picture

Ale chcę zobaczyć to zdjęcie (bez przeciągania strzały marginesów) alt text

To kody CSS i podglądu

alt text

+0

Informacje o stronie @ 1: http://www.w3.org/TR/CSS2/page.html#x3 2: http://www.belgeler.org/recs/css2/ page.html – uzay95

Odpowiedz

11

Najlepsze, co możesz zrobić, to ustawić @page margins. Pamiętaj jednak, że możesz i najprawdopodobniej zostanie on unieważniony, jeśli ustawisz marginesy na 0.

+0

Czy to oznacza, że ​​po prostu robisz coś takiego? '@page {margin: 1in; } ' –

0

Nie sądzę, że jest to możliwe, ponieważ spowoduje to odrzucenie domyślnych ustawień użytkownika komputer. O ile mi wiadomo, aplikacja internetowa nie ma uprawnień dostępu do zmiany ustawień drukarki bez użycia skryptu ActiveX w IE.

Miałem podobny problem jakiś czas temu, a skończyło się na konieczności generowania pliku PDF w locie za pomocą TCPDF. W końcu to zadziałało lepiej, ponieważ masz większą kontrolę nad układem.

13

Tak. Możliwe jest zmienianie marginesów na wydruku strony. Reguła będzie wyglądać następująco:

@page { 
    margin: 0; 
} 

To nie będzie działać w Firefoksie od teraz. Jeśli sprawdzisz ich numer referencyjny programisty pod numerem @page CSS support, zobaczysz, które przeglądarki obsługują @page.

0

Nie mogę uaktualnić komputera z Windows XP do czegoś nowszego, więc w zasadzie utknąłem z IE8.

Znalazłem, że na IE8 marginesy strony zawsze będą minimalne z 6,01 mm w lewo i w prawo oraz 5 mm u góry iu dołu. Bez względu na to, co robię, nawet przy użyciu prawych górnych lewych i środkowych reguł w regule @page, nadal będą to wartości domyślne.

Utworzenie arkusza stylów może być łatwiejsze, biorąc pod uwagę to ograniczenie rozmiaru wydruku.

Może również pomóc w umieszczeniu ataku IE \ 9 przed wartością właściwości klasy CSS, duplikowanie właściwości może również pomóc w niektórych przypadkach (ale nie wpłynie na marginesy strony), takich jak:

.aDiv { 
    margin: 10mm; 
    margin: 15mm\9;  //this \9 hack will set that value only on IE8. 
} 

wiem, że są inne hacki podobne do tego, jak \ 0, ale muszę przyznać, nie w pełni je zrozumieć. \ 9 działa dla mnie w IE8 w niektórych sytuacjach.

1

Dzięki! działa również na chromie

Powiązane problemy