CSS -objektiperintä? (fontit)

CSS_olioperintä_onko

Tunnetaanko CSS -määritteissä objektiperintää objektiorientoituneiden ohjelmointikielien tapaan?

Ongelmana siis se, että vaikka jo BODY -elementille määritellään CSS:n avulla fontti, niin tuon BODY:n sisällä kun on vaikkapa DIV tai INPUT (tai SPAN) -elementti, niin noilla elementeillä on oletuksena ERI fontti kuin BODY -elementillä!

JOS käyttää em -mittayksikköä, tämä on luonnollisesti katastrofi !

Eli jos käyttää em -mittayksikköä width ja height -määreissä, silloin täytyy pakottaa jokaisen elementin fontti keskenään samaksi!

(tai sitten: jos jonkun elementin fontti poikkeaa muiden elementtien fontista, tällaisen elementin width/height -arvo kannattaa määritellä pikseleinä EIKÄ em -yksikköinä!)

Tällöin olisi kiva, jos voisi määritellä CSS:llä jonkunlaisen "basesettings" -elementin, jossa asetetaan fontti, ja periyttää kaikki muut CSS -määritteet tuosta "basesettings" -elementistä.

Mutta tukeeko CSS tällaista sellaisenaan, vai onko ainoa vaihtoehto joko

a) unohtaa koko juttu ja sisällyttää sama fonttimääritys jokaiseen CSS -määreeseen

tai

b) tehdä itse pieni apuohjelma, ja kieltäytyä koskaan kirjoittamasta puhdasta CSS:ää, vaan sensijaan:

Itse kirjoittaa sivu.CSS -tiedoston sijasta esim. sivu.CSB -tiedoston, johoon sitten jotain tällaista:

input {
font-weight: %FONTWEIGHT%;
font-family: %FONTFAMILY%;
font-size: %FONTSIZE%;
}


ja sitten apuohjelmassa asettaa fontin esim:

FONTWEIGHT=400
FONTFAMILY="Arial", Helvetica, arial
FONTSIZE=normal

Ideana se, että tälläin tuo apuohjelma (joka lukee .CSB -tiedoston, ja tuottaa CSS -tiedoston) lisää JOKAISEEN CSS -määritykseen rivit:

font-weight: 400;
font-family: "Arial", Helvetica, arial;
font-size: normal;

Eli onko CSS:ssä olioiden perintää, vai onko ainoa vaihtoehto joko

1) unohtaa koko juttu (ja kärsiä siitä, että jos jonkun fontin vaihtaa, niin joko pitää manuaalisesti vaihtaa kaikki muutkin fontit samaksi tai sitten koko em -mittayksiköihin perustuvat mitat menevät sekaisin).

2) tehdä itse em. kaltainen apuohjelma ja kirjoittaa itse pelkkää CSB:tä ja antaa apuohjelman tuottaa CSS

?

4

482

    Vastaukset 4

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • linuxuser
    • hmhmhmhm

      Kyllä se fontti pitäisi pysyä samana jos se on bodylle määritelty, siis näin:

      body
      {
      font-family: serif;
      }

      Kyllä CSS:ssä perintää on monenlaista, ja montaa tyyliä voi helposti yhdistellä esim. class attribuutissa kirjoittamalla tärkeysjärjestykseen tyylit välilyönnillä eroteltuna.

    • Koodie

      Perintä onnistuu avainsanalla ”inherit”:

      div, span, input {
      font-family: inherit;
      }

      Jotakin on kuitenkin vialla, jos div- ja span-elementit eivät peri bodyn fonttia. Se siis pitää korjata eikä käyttää perintää turhaa.

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

    Luetuimmat keskustelut

    1. El Khamenein arkku K-Kaupan autossa?

      Kyllä kauppias hoitaa?
      Maailman menoa
      154
      1445
    2. Mahdoton tilanne

      Täällä monella tuntuu olevan jumissa oleva tilanne. Joillakin kaipuu ja ikävä on kestänyt jo vuosia. Osapuoli/puolet ova
      Ikävä
      100
      960
    3. Välillä tulee haikeus

      Et kaikki päättyi näin. Etten saanut vastauksia. Ei meitä oltu tarkoitettu. Niin se vain on.
      Ikävä
      78
      894
    4. Tunteilla leikkiminen

      Oletko leikkinyt kaivattusi tai jonkun kiinnostuneen tunteilla, pelannut jotain peliä tai pelleillyt asioilla? Miksi?
      Ikävä
      113
      835
    5. Ne katseet, ei niitä

      Voi unohtaa. Se, miten molemmat katsoi
      Ikävä
      42
      730
    6. Miten jotkut kehtaa aikuisiällä kiusata

      Ihmisiä? Eikö se ole aika noloa?
      Ikävä
      109
      638
    7. Mä olin ihan peloissani sun lähellä

      Huomasitko? En uskaltanut edes katsoa sua. Näin sivu silmällä sun vinon hymyn. Oliko hyvä vai paha juttu kun tulit lähel
      Ikävä
      22
      574
    8. Mitä jos näkisimme

      Vyöryisikö samat tunteet uudelleen?
      Ikävä
      52
      554
    9. On ikävä sinua ihana

      En jaksa syvempiä tuntoja enää kirjoittaa. Kaipaan sinun läsnäoloa ja läheisyyttä nainen. Hyvää yötä.
      Ikävä
      28
      553
    10. Rydmanin lista lääkkeistä joista poistetaan Kela-korvaus julkisen potilailla

      Rydmanin lista lääkkeistä joista poistetaan Kela-korvaus julkisen potilailla (yksityisen asiakkaille Kela-korvaus jätetä
      Maailman menoa
      385
      522
    Aihe