Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webdesign (HTML, CSS, Flash)

document.write gebruiken om top margin te veranderen hoe

Anne
12 antwoorden
  • Beste forumgebruikers.

    Ik probeer me altijd suf hoe alles aan elkaar te plakken is. Dit kan ik niet goed terug vinden in de boeken.

    Hoe moet ik nu bv in de javascript
    { document.write ('.body.topmargin="25");}
    precies opbouwen.
    Als het mogelijk is een voorbeeld en antwoord waarmee ik zelf de andere aan elkaarplak functies ook begrijp want ik weet inmiddels wel de functies te vinden maar het aan elkaar knutselen is nog een probleem.

    Hopelijk dat iemand me hier mee verder kan helpen groetjes arno :oops:
  • document.body.style.marginTop=25;
  • Heel hartelijk dank maar hoe weet je nu hoe dit aan elkaar te zetten.
    Is hier een duidelijke reference voor want elk boek wat ik bekijk staat het te beknopt voor me in

    Groetjes Arno
  • @Arnow, wat bedoel je precies met aan elkaar zetten?

    @Hulpje, moet dat niet zijn:[code:1:0efcb97f2f]document.getElementsByTagName('body').item(0).style.marginTop = "25px";[/code:1:0efcb97f2f]Dit is volgens mij de enige goede manier om het body element (W3C DOM) te benaderen daarnaast moet er atlijd een eenheid achter een CSS waarde ;).

    Anne
  • [quote:6053adc078="termin8or"]@Arnow, wat bedoel je precies met aan elkaar zetten?
    [code:1:6053adc078]document.getElementsByTagName('body').item(0).style.marginTop = "25px";[/code:1:6053adc078][/quote:6053adc078]
    Waarschijnlijk hoe je bovenstaande code hebt geconstrueerd… Zijn boeken vertellen wel wat, maar niet alle mogelijke properties enzo.
  • [quote:2897016199="termin8or"]
    @Hulpje, moet dat niet zijn:[code:1:2897016199]document.getElementsByTagName('body').item(0).style.marginTop = "25px";[/code:1:2897016199]Dit is volgens mij de enige goede manier om het body element (W3C DOM) te benaderen daarnaast moet er atlijd een eenheid achter een CSS waarde ;).
    [/quote:2897016199]
    In javascript hoeft dat niet. Het wordt automatisch omgezet naar px-waarden.
    document.body.style werkt gewoon in alle browsers. Van bovenstaande vraag ik het me af.
    Moet het niet trouwens dit zijn:
    [code:1:2897016199]
    document.getElementsByTagName('body').item(0).setAttribute("style","margin-top:25px";
    );[/code:1:2897016199]
    om het helemaal op w3c manier te doen?

    Ik gebruik zelf altijd dit als handig naslagwerk:
    http://www.xs4all.nl/~ppk/js/version5.html
    Misschien dat je daar wat aan hebt Arnow?
    Ik ben eigenlijk al een beetje vergeten wat de goede plekken op internet zijn voor beginnerstutorials voor javascript en zo. Er was een tijdje geleden nog een topic over, dacht ik.
  • [quote:b8b44198cc="hulpje"]In javascript hoeft dat niet. Het wordt automatisch omgezet naar px-waarden.[/quote:b8b44198cc]Ook als het verzonden wordt als application/xhtml+xml? Gewoon voor de zekerheid ;), weet het zelf ook niet geheel precies.[quote:b8b44198cc]document.body.style werkt gewoon in alle browsers. Van bovenstaande vraag ik het me af.[/quote:b8b44198cc]Dat werkt niet in "correcte" XHTML documenten, zoals mijn website bijvoorbeeld.[quote:b8b44198cc][…]om het helemaal op w3c manier te doen?[…][/quote:b8b44198cc]Nee, style is een officieel DOM 'object': http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/css.html#CSS-CSSStyleRule-style

    Anne
  • En nu wat links voor de topicstarter ;):[list:5770826e3a][*:5770826e3a]Dynamic Content with DOM-2 (Part I of II)[*:5770826e3a]Dynamic Content with DOM-2 (Part II of II)[/list:u:5770826e3a]Anne
  • Bedankt termin8or, het staat in dat document. Ik denk alleen op een iets andere plek.
    http://www.w3.org/TR/2000/REC-DOM-Level-2-Style-20001113/css.html#CSS-htmlelementcss-h3

    [quote:79a2924e62]
    The expectation is that an instance of the ElementCSSInlineStyle interface can be obtained by using binding-specific casting methods on an instance of the Element interface when the element supports inline CSS style informations
    [/quote:79a2924e62]
    Het is mij niet helemaal duidelijk wat ze daarmee bedoelen, maar ik geloof dat ze ermee bedoelen dat elke programmeertaal zijn eigen specifieke manier van het binden van instanties van objecten heeft. In het geval van javascript dus de puntnotatie.
    document.getElementById('iets').style mag dus gewoon.

    De style object is van het type CSSStyleDeclaration –> daar gekeken:
    http://www.w3.org/TR/DOM-Level-2-Style/css#CSS-CSSStyleDeclaration

    Daar staan kennelijk de methodes die je mag gebruiken om inline styles te zetten:

    Kennelijk moet het dit zin voor de DOM-manier:
    [code:1:79a2924e62]
    document.getElementsByTagName('body').item(0).style.setProperty('margin-top','25px','');
    [/code:1:79a2924e62]
    ***.style.marginTop=25; is dus (denk ik) een shorthand manier die, hoewel niet gedefinieerd door het w3c, wel door alle browsermakers is geimplementeerd.

    edit:
    Bij die shorthand manieren hoef je er dus ook niet per se eenheden achter te plaatsen.

    edit edit:
    http://bugzilla.mozilla.org/show_bug.cgi?id=111514
    is de url over dat document.body verhaal.
  • De specificatie van het DOM is een beetje onduidelijk naar mijn mening. Ik kwam op die link via m'n DOM-Sidebar in Mozilla, daar staan alle properties en eigenschappen enz. netjes in, en ik zag ergens 'style' staan :roll:

    document.body: ja, tegenwoordig kan het weer wel, maar ik ben het wel eens met Hixie, het is XML (of XHTML) en geen HTML.

    Anne
  • Ik heb ook weer wat geleerd, nl dat application/xhtml+xml als mime-type anders is dan text/xml. Ik vroeg me al af wat het nut van dat mime-type was als xhtml zich gewoon hetzelfde zou moeten gedragen als xml.

    Overigens, als document.body niet had bestaan, dan had die zo aangemaakt kunnen worden:
    [code:1:6cc2943fdf]
    if (typeof document.body=='undefined')document.body=document.getElementsByTagName('body')[0];
    [/code:1:6cc2943fdf]

    Toch allemaal wel heel interessant dat xhtml/xml gebeuren, hoewel ik het toch niet echt kan aanraden voor de gemiddelde huis- tuin- en keuken-websitebouwer.
  • Daar zijn we weer.
    Ben er even tussen uitgeweest De code werkt nu maar voor de uitleg
    moet ik nog even puzzelen. Normaal beschouw ik me zelf niet als een van de domste maar als ik even naar de verwijs pagina's kijk dan zakt toch even de moed in de schoenen. Het lijkt allemaal zo ingewikkeld of beknopt opgeschreven.
    Ik ga het een een ander bestuderen en hoop dat ik de bomen in het bos ga vinden. Mischien weet iemand een clear bos?
    (een makkelijkere uitleg dan de w3c).
    Word vervolgt maar in ieder geval heel hartelijk dank voor jullie moeite en tijd.
    Groetjes Arno

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.