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

452

    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. Suomessa on meneillään boomereiden kosto

      1990-luvun lamassa osumaa saaneet sukupolvet toivovat sen jälkeen syntyneille sukupolville kärsimystä porvareita äänestä
      Maailman menoa
      24
      2232
    2. Petteri Orpon kommentti persujen väkivaltaan?

      Hiirenhiljaa taas on, kun Tampereella persulahkon ääriosasto pahoinpiteli kantasuomalaisen tytön. Missä on pääministeri
      Maailman menoa
      28
      1606
    3. Mitä ikävöit eniten

      kaivatussasi? 🫶
      Ikävä
      89
      1392
    4. Onko sinulla jalostettu koira? Nämä tekijät altistavat koiran sairastumiselle

      Moni Suomessa suosittu koirarotu on sairas ulkonäkökeskeisen jalostuksen ja ääripiirteiden vuoksi. Erityisesti tietyt t
      Koirat
      23
      1375
    5. Anabaptismin kirous

      Uudestikastetut lahkolaiset joutuvat valheen kierteeseen. He joutuvat herjaamaan lapsena saamaanssa kastetta nimeen Isä
      Kaste
      417
      1072
    6. Miten voit vain

      Olla kuin mitään ei olisi?
      Ikävä
      117
      984
    7. Pelolla pakottaminen

      Kristinusko on tuovinaan valoa ja toivoa, mutta ensin pitää olla pimeyttä ja toivottomutta jotta joku valoa ja toivoa ha
      Kaste
      624
      906
    8. Robotiikka korvaa tulevaisuudessa seurustelusuhteet

      Haluan herättää keskustelua aiheesta. Asiantuntijoiden mukaan robottien kehitys on 10-15 vuoden päässä siitä että voidaa
      Sinkut
      234
      856
    9. kamera hakokylässä

      kamera kuvaamassa yleistä tietä laittomasti ristauksessa hakokylä-raatevaara!
      Hyrynsalmi
      12
      690
    10. Suomuksen kuumin kaupan kassa?

      Missä kaupassa on, siellä minäkin alan käymään.
      Suomussalmi
      10
      680
    Aihe