Ändra CSS med getElementsByTagName?

Tråden skapades och har fått 2 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Helsingborg
  • 2008-06-01 14:33

Hallå, jag klassar väl mig själv som halvnybörjare den förunderliga världen av javascript, men jag sitter iaf här med ett ganska irriterande problem.

Vad jag försöker göra är att helt enkelt ändra "margin-left" på alla <h1>-taggar m.h.a ett javascript.

Normalt skulle jag bara köra med

document.getElementById('id').style.marginLeft = '10px'

, men nu är det som sagt alla element som går under h1-taggen som jag vill ändra. Jag antog från början att det skulle vara så enkelt som att skriva

document.getElementsByTagName('h1').style.marginLeft = '10px';

, men icke sa nicke, det fungerar inte alls.

Min fråga är därför helt enkelt, går detta att göras på något sätt, utan att ge varje h1-element en egen id-tagg (vilket är oerhört klumpigt)?

Tack i förhand.

eftersom du får en array måste du loopa över den:

function getElems(tag){
if(document.getElementsByTagName){
var tags = document.getElementsByTagName(tag);
for(i = 0; i < tags.length; i++){
tags[i].style.color = 'red';
}
}
}

och så t ex:
<body onload="getElems('h1');">

  • Medlem
  • Helsingborg
  • 2008-06-02 01:07

Ah, så klart! Borde ha förstått att det var något i den stilen som behövde göras. Jag tackar så hemskt mycket, nu borde det fungera betydligt bättre.

1
Bevaka tråden