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

289

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

    Luetuimmat keskustelut

    1. Nyt tajusin mitä haet takaa

      En epäile etteikö meillä olisi kivaa missä vaan. Se on iso hyppy henkisellä tasolla sinne syvempään päätyyn, kuten tiedä
      Ikävä
      43
      3503
    2. Kiitos kun sanoit ikävästi minulle, herkälle

      Sait kesälomani pilattua😔
      Ikävä
      36
      2104
    3. Naiselle mieheltä

      Huomasin tuossa, että jääkaapissani on eräs sinun ostamasi tuote edelleen avaamattomana. Arvaatko mikä?
      Ikävä
      30
      1799
    4. Kaipaan niin....

      Aaawww mikä kaipuun tunne iski ja lujaa🥺😭❤️
      Ikävä
      16
      1567
    5. Eiii...

      Etkä! 😘
      Ikävä
      23
      1538
    6. Jalkapalloa

      Ura ja Kokkola Cup?
      Kannus
      11
      1457
    7. Mikset vain

      Unohtaisi?
      Ikävä
      24
      1397
    8. En ymmärrä miksi minä

      Maailma on täynnä sinulle muita
      Ikävä
      14
      1257
    9. Ihmetteletkö, mihin sinussa ihastuin?

      Pikkuhiljaa huomasin, että olet ainutlaatuinen luonne, plussana tietysti ulkoiset avut. Toista ei taida löytyä koko maai
      Ikävä
      78
      1195
    10. Jo Alkanutta Viikkoa Ja Maanantai Päivää

      Hyvää huomenta naiselle ❤🤗😘 Toivoo mies
      Ikävä
      23
      1137
    Aihe