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

427

    Vastaukset

    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ä.

    Takaisin ylös

    Luetuimmat keskustelut

    1. Persut ja Tall poppy -syndrooma

      Persut ovat uhranneet käytännössä koko elämänsä lannistaakseen tai sabotoidakseen yksilöitä, jotka erottuvat joukosta ky
      Maailman menoa
      8
      4828
    2. Oot mahtava tyyppi

      En tiedä luetko palstaa. Koitan siitä huolimatta. Oot mun mielestä tosi erityinen tyyppi. Nopeesti taisin ihastua. Jot
      Ikävä
      44
      4714
    3. Orpo: Seuraavalla hallituksella ei ole yhtään enempää rahaa

      Valtiovarainministeriön virka-arvion mukaan julkisen talouden sopeutuksen tarve on noin kymmenen miljardia euroa ensi va
      Maailman menoa
      181
      3856
    4. Suomen kieli hiipuu vähitellen Vantaalla

      nykytahdilla jo joka kolmas vantaalainen on vieraskielinen 2030-luvun alussa. Maahanmuutto, suomalaisten alhainen synty
      Maailman menoa
      43
      3617
    5. Miksi vihereät ja vasemmisto haluavat tuhota tämän maan?

      He halusivat, että kannabis tulisi lailliseksi? - eikö kylliksi nuoria tuhota jo nyt huumeilla? - kannabis tuhosi minun
      Maailman menoa
      113
      3584
    6. Sofia servasi Pikku-Villen suvereenisti

      – Ihanko tosissaan tuleva sosiaali- ja terveysministeri hyökkää oppositiopuolueen puheenjohtajaa vastaan siksi, että täm
      Maailman menoa
      65
      3072
    7. Kun puolustusvoimat on huolissaan nuorison huonosta kunnosta

      ajatellen varusmiespalvelusta(kun moni joutuu keskeyttään), niin johan tuli joku yliopiston vasemmistonainen selittään,
      Maailman menoa
      112
      2031
    8. Ikävän karkoitukseen klassikkokysymys

      Mikä biisi saa hymyn huulille ja ajatukset mukavasti siihen yhteen ja ainoaan? 🤩 Laita biisin sanat, älä linkkiä. Alo
      Ikävä
      12
      1090
    9. Elämäni rakkaus

      Sitä sinä olet minulle ollut. Siksi tämä on kai niin vaikeaa. Jos sinä luopuisit niin ehkä se tulisi luonnostaan sitten
      Ikävä
      63
      897
    10. Millainen mulle

      Sitten sopisi?
      Ikävä
      93
      812
    Aihe