• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Sterowanie stylem CSS poprzez DOM js

0 głosów
638 wizyt
pytanie zadane 27 sierpnia 2018 w JavaScript przez bulit000 Początkujący (460 p.)
Dzień dobry

Chciałbym osiągnąć taki efekt:

CSS: #plansza { font-size: 40px };

JS: haslo1 = ['0' , '1' , '2'];

document.getElementById("plansza").style.fontSize = *obecny rozmiar* - haslo1.legnth + px;

 

Mam ustalony font-size dla id plansza w CSS na sztywno w pixelach.

Chciałbym odejmować od niego tyle pikseli, ile wynosi długość tablicy haslo1.

 

W jaki sposób to zrobić? Może użyć jakiejś sztuczki? Chodzi o sterowanie wielkością wyrazu za pomocą ilości znaków w nim zawartych.

2 odpowiedzi

+1 głos
odpowiedź 27 sierpnia 2018 przez Tomek Sochacki Ekspert (227,490 p.)
const element = document.getElementById('plansza');

// Pobieramy style obliczone:
const elementStyles = window.getComputedStyle(elem);

// Z obliczonych styli wyciągamy fontSize:
const elementFontSize = elementStyles.getPropertyValue("fontSize");

Metoda getComputedStyle zwraca obiekt zawierający style obliczone, czyli te po przejściu wszystkich reguł CSS, styli inline itp. (czyli jakby końcowe). Natomiast poprzez style.fontSize możesz odnosić się do styli inline które sam przypiszesz w html lub w JS.

0 głosów
odpowiedź 27 sierpnia 2018 przez 1234 Dyskutant (9,140 p.)

Jeżeli chcesz pobrać jakiś atrybut CSS to polecam użyć jQuery:

var fontsize = $("#plansza").css("font-size");

funkcja "css" w jQuery pozwala również na zmianę styli CSS.

Tutaj przykład:

// Zapisywanie stylu do zmiennej
var fontsize = $("#div1").css("font-size");

// Zmienianie stylu
$("#div2").css("font-size", fontsize);

 

2
komentarz 27 sierpnia 2018 przez bulit000 Początkujący (460 p.)
Dzięki za odpowiedź, ale wolałbym nie podpinać jQuery tylko dla tego zadania.
komentarz 27 sierpnia 2018 przez 1234 Dyskutant (9,140 p.)

Poszukałem w Google i znalazłem coś takiego

Podobne pytania

0 głosów
4 odpowiedzi 658 wizyt
pytanie zadane 20 czerwca 2018 w JavaScript przez Paweł Kościelny Początkujący (360 p.)
0 głosów
1 odpowiedź 216 wizyt
pytanie zadane 6 czerwca 2019 w HTML i CSS przez Rozukee Początkujący (300 p.)
0 głosów
1 odpowiedź 257 wizyt
pytanie zadane 12 maja 2019 w HTML i CSS przez yato94 Nowicjusz (140 p.)

93,424 zapytań

142,421 odpowiedzi

322,646 komentarzy

62,785 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...