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
      561
      1923
    2. Sinä. Just sinä.

      Palataan ajassa taaksepäin vuosi tai kaksi. Mitä tekisit toisin jos voisit?
      Ikävä
      92
      934
    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
      18
      927
    4. 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
      826
    5. 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
      2
      757
    6. 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
      739
    7. Miten kuvaisit tunteitasi

      tällä hetkellä?
      Ikävä
      69
      718
    8. Tiedätkö kaivattusi musiikkimaun?

      Minkälaisesta musiikista hän pitää?
      Ikävä
      63
      715
    9. Jos saisit palata takaisin johonkin vuoteen

      Mikä vuosi se olisi? Ja mitä siinä hetkessä tapahtuisi?
      Ikävä
      74
      658
    10. Moi, olen Lampunhenki

      Kerro toivomuksesi🏺
      Ikävä
      65
      553
    Aihe