CSS ja tulostuksen rajaus

Avuton...

Kuinka saisin css:ää käyttämällä rajattua tulostuksen (tulostimella paperille) siten että ainoastaan sivulla oleva yksi kuva tulostuisi.

Toimisiko se jotenkin tyyliin body{display:none;} ja div.kuva{xxxx:xxxx;}? Mitä tuonne x:ien tilalla tulisi laittaa? Vai olisiko joku toinen ratkaisu parempi?

1

345

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • CSS:llä sujuu aika hyvin se, että tulostuksesta jätetään jotain pois (esim. vakionavigointi tai [itsessään typerät] "Takaisin alkuun" -linkit). Huomattavasti hankalampaa on saada aikaan jotain sellaista, mitä nyt yrität.

      Hahmottelemasi lähestymistapa kaatuu jo siihen, että jos body-elementille asetetaan display: none, mitään ei tulostu. Body-elementtihän vastaa koko sivua. Jos sitä ei tulostu, niin mitään ei tulostu. Ei ole väliä, määritelläänkö tulostumattoman elementin jokin osa tulostuvaksi.

      Sen sijaan seuraavalla tavalla onnistuisi _tavallaan_:

      body { visibility: hidden; }
      div.kuva img { visibility: visible; }

      Silloin kuitenkin kuva tulostuu juuri siihen, mihin se muutoinkin tulostuisi, joka voi olla vaikka sivulla 42. Kaikki muu "on" siellä, mihin se sijoittuu, mutta näkymättömissä.

      Jos haluat kuvan ihan alkuun, voit lisätä esimerkiksi

      div.kuva img { position: absolute; top: 1cm; left: 2cm; }

      Siihen sitten tietysti sellaiset top- ja left-arvot (ylämarginaali ja vasen marginaali) kuin tuntuu sopivalta.

      Tällöinkin voi sitten tulostua esimerkiksi 42 tyhjää sivua, koska kaikki muu edelleenkin "on" mukana, vain näkymättömissä.

      Seuraava voi siis olla parempi lähestymistapa: käytetään merkkausta


      ...

      ...


      jolloin tyyliohjeessa on (@media print -osassa) vain

      .alku, .loppu { display: none; }

      Jään ihmettelemään, minkälaisessa tilanteessa olisi mielekästä, että vain kuva tulostuisi.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Medvedev: Suomi tuhoutuu ydinsodassa ensimmäisenä

      Venäjän ydinaseilla on lyhyin matka Suomeen, joten ydinsodassa Suomi tuhoutuu heti sodan alkuminuuteilla, muilla mailla
      Maailman menoa
      611
      2213
    2. Sinä. Just sinä.

      Palataan ajassa taaksepäin vuosi tai kaksi. Mitä tekisit toisin jos voisit?
      Ikävä
      108
      1088
    3. Hotellille löytyi ostaja....

      Tämän päivän Kainuun Sanomissa oli uutinen, että pesänhoitajan mukaan Hotelli Kainuu myydään ensiviikolla. Hieno homma,
      Kuhmo
      23
      1065
    4. Saana airola ja. muusikko spekulaatiota

      Saara airolan kirja muusikko mies. Oisko redrama tai lauri tähkä? Saana oli 13 v vuonna 2014 Tekoäly sanoo : tähkä Julki
      Yhteiskunta
      4
      927
    5. Onko se loukkaavaa

      Kun joka kerta tuijotan sun peppua. En mahda sille mitään, että se vangitsee katseeni. Pohdin vain että ei minusta ole k
      Ikävä
      101
      855
    6. Miten kuvaisit tunteitasi

      tällä hetkellä?
      Ikävä
      85
      833
    7. Onko kaivattusi seinäruusu?

      Kun hän saapuu paikalle, huomaako kukaan, vai kääntyvätkö päät? Onko se hyvä vai huono juttu? Oletko sinä huomattu vai
      Ikävä
      50
      759
    8. Jos saisit palata takaisin johonkin vuoteen

      Mikä vuosi se olisi? Ja mitä siinä hetkessä tapahtuisi?
      Ikävä
      89
      752
    9. Tiedätkö kaivattusi musiikkimaun?

      Minkälaisesta musiikista hän pitää?
      Ikävä
      63
      725
    10. Moi, olen Lampunhenki

      Kerro toivomuksesi🏺
      Ikävä
      65
      573
    Aihe