html5, article vs. div

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior PHP developer

Functie Als Senior PHP developer heb je een sterke mening over de architectuur van projecten en de processen binnen het team. Je bent de sparringpartner voor je Team Lead. Ook ondersteun je met jouw kennis de minder ervaren developers in jouw team. Ze werken regelmatig aan projecten vanaf scratch en dit geeft ruimte om voor nieuwe technieken te kiezen. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en

Bekijk vacature »

Medior/senior Front-end developer

Functie Je maakt deel uit van een DevOps Scrum team en werkt samen met back-end developers, test-engineers, interaction designers en een projectmanager. Er zijn verschillende groepen Scrum teams. Een roadmap team is jouw ‘’thuisbasis’’, daar wordt gewerkt aan doorontwikkeling van bestaande omgevingen voor een aantal klanten. Hiernaast zijn er projectteams waar nieuwe omgevingen worden gebouwd, of grote complexe wijzigingen worden doorgevoerd op bestaande omgevingen. Je kunt (afhankelijk van jouw wensen en doelen) dus afwisselend werken in beide teams. Hiernaast participeer je in het Chapter Front-end development waar gezamenlijk kennis en ervaring wordt gedeeld. Als Front-end developer is het jouw doel

Bekijk vacature »

Lead developer

Functie Als Lead developer wordt jij onderdeel van een multidisciplinair team van circa 23 software engineers. Als team werken jullie agile en zijn termen als Continuous Integration en Continuous Delivery dagelijkse koek. Jullie werken aan uitdagende en afwisselende projecten met als doel klanten een totaal oplossing aan te kunnen bieden. Jij wordt verantwoordelijk voor complete projecten waarbij jij als verantwoordelijke zorgt dat het project op de juiste manier blijft draaien. Zo haal jij ook de requirements op bij de klant en kijk jij samen met het team en met de salesafdeling hoeveel uren hiervoor nodig zijn. Daarnaast stuur jij jouw

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Fullstack Developer

Functieomschrijving Heb je kort geleden jouw HBO diploma ICT development behaald? Of zit je nog aan het begin van je carrière en heb je affiniteit met C#.NET? Voor een erkende werkgever in de omgeving van Oosterhout zijn wij op zoek naar een fullstack developer. Als C#.NET developer werk je samen met een vooruitstrevend team aan het ontwikkelen van maatwerk software voor klanten. Je hebt affiniteit met SQL, maar nog belangrijker is dat je kennis en ervaring hebt met C#.NET. Jouw werkzaamheden zien er als volgt uit: Het ontwikkelen van onze high-availability en high-performance backend; Je begint de dag rond 8:30

Bekijk vacature »

Senior C# Software Ontwikkelaar te Zaandam

Bedrijfsomschrijving Deze werkgever heeft als missie om haar klanten op ICT-gebied volledig te ontzorgen. Ze zijn een ICT bedrijf met een verscheidenheid aan ICT oplossingen waaronder Cloud oplossingen en een groot deel van het werk is gericht op software realisatie. Voor de Enterprise-klanten voert het relatief kleine ontwikkelteam waar jij deel uit van kan gaan maken binnen deze organisatie te Zaandam de grootste opdrachten uit. Niet alleen websites en complexe webapplicaties maar ook mobile apps, web services en complete systeemintegraties! Je moet dan denken aan Dynamics, Sharepoint en Salesforce. Je komt hier terecht in een relatief kleine organisatie met ontzettend

Bekijk vacature »

C++ Developer

Functieomschrijving Ben jij als software engineer toe aan een nieuwe uitdaging? Dan zijn wij op zoek naar jou! Voor het maken van de procesbesturingsoftware gebruiken onze projectteams een in C++ en C# geschreven tool. Dit is een gedistribueerd object framework wat alle kernfuncties biedt voor een procesautomatisering. Verder zullen jouw werkzaamheden o.a. bestaan uit: Analyseren van vragen en wensen van gebruikers en deze vertalen naar een functioneel ontwerp; Ontwerpen, programmeren en testen van productaanpassingen; Implementeren van nieuwe productreleases in de projectteams; Continu toetsen van het effect van nieuwe releases op andere tools en processen; Inzichtelijk maken van voortgang omtrent softwarewerkzaamheden,

Bekijk vacature »

Ervaren Full stack developer

Functie omschrijving Ben jij op zoek naar een uitdagende in-house functie bij een bedrijf met enorme groeipotentie? Ben jij op zoek naar een nieuwe uitdaging vol afwisseling en gezelligheid? Dan ben je bij dit bedrijf aan het juiste adres! Wij zijn in omgeving Breda op zoek naar een ervaren full stack developer. Je gaat werken voor een zeer gewilde werkgever met goede arbeidsvoorwaarden. Je krijgt een plekje in het jonge IT team, work hard, play hard is hier duidelijk het motto! Jouw werkzaamheden zien er als volgt uit: Jij bent verantwoordelijk voor het ontwerpen en bouwen van webapplicaties. Je bent

Bekijk vacature »

Senior pega developer

You work on software that makes colleagues and customers happy! Thanks to your IT skills, De Mandemakers Groep really makes a difference for its customers. Do coding, testing and deployments make your heart beat faster? Then apply today as Senior Pega Developer at De Mandemakers Groep! Wat ga je doen? The job title gives it away: You will be developing Pega software. This ranges from technical design, coding and testing to test automation, deployments and bug fixing. Your goal is to continuously improve our systems so that colleagues can work efficiently and customers receive optimal service. You don't have to

Bekijk vacature »

Front-end developer

Functie Jij komt te werken in een team van 5 developers. het product is continue in beweging. Nieuwe en bestaande klanten vragen om vaak nieuwe features. Hierin ben jij zeer belangrijk om te zorgen dat de functionaliteiten goed opgezet worden op technisch vlak. Designs krijg je aangeleverd van een externe partij zodat jij je primair kan focussen op de techniek! Je hebt daarbij alle vrijheid om je eigen creativiteit toe te passen en mee te denken over de gebruikte technieken. Het gezamenlijke doel is een product dat functioneel zeer gebruiksvriendelijk is en het bedrijfsproces van de gebruikers versneld en kwalitatief

Bekijk vacature »

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

Klein team zoekt grote fullstack .NET developer to

Bedrijfsomschrijving Deze werkgever is marktleider in de Benelux en is Europees ook al aardig aan de weg aan het timmeren. Ze voorzien technische winkels van apparatuur om producten een langer leven te geven. Hiermee reduceren ze flink wat CO2 uitstoot en dat is natuurlijk goed voor iedereen! IT speelt een belangrijke rol in de bedrijfsvoering en de applicaties zijn van goed niveau. Als fullstack .NET developer ga jij je bijdrage leveren aan het verder verbeteren van de applicaties en de interne processen. Ze zijn nu met ruim 50 medewerkers in totaal en de afdeling development bestaat uit een 5tal developers.

Bekijk vacature »

Embedded Software Developer

Functie omschrijving Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar een Embedded Software developer. Ben jij enthousiast en een echte team player? Lees dan snel of dit iets voor jou is! Binnen deze rol houdt jij je bezig met alle werkzaamheden die nodig zijn om een functionaliteit te bouwen. Denk aan ontwerpen, architectuur, programmeren en algoritmes. Je voert test en validatie werkzaamheden uit bij de implementatie bij de klant. Ben jij een Embedded Software Developer die affiniteit heeft met de allernieuwste technieken? Laat dan snel wat van je horen! Bedrijfsprofiel Onze opdrachtgever bestaat uit een groot

Bekijk vacature »

Back end developer PHP

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Fullstack developer (NodeJS, React, AWS)

Functie Als Fullstack developer kom je te werken in het ontwikkelteam, maar zoals gezegd komt er veel meer bij kijken dan alleen maar ontwikkelen. Je bent samen met je collega’s continu bezig om de software uit te breiden maar hiernaast doe je doorlopend onderzoek naar de inzet van bijvoorbeeld Machine Learning. Ze willen met hun software echt voorlopen op andere en toegevoegde waarde leveren voor de eindgebruiker. Mede hierom zijn ze erg benieuwd naar iemand zijn persoonlijkheid, of hij graag nieuwe dingen uitzoekt (Google!), en initiatief neemt. Maar waar staan ze nu? Na een onderzoeksfase van ruim een jaar zijn

Bekijk vacature »
David Bekker

David Bekker

19/11/2012 11:38:14
Quote Anchor link
Hoi,

Ik ben bezig met een pastebin, ontwerp is al af maar nu twijfel ik over de juiste elements.

Een screenshot voor wat duidelijkheid:
Afbeelding

Kan ik de content (rood) beter in een article stoppen of in een div#content? En het groen, kan dit beter in een div of in een section?
Hoe kijken browsers hier precies tegenaan en hoe kijkt googlebot hier tegenaan?

Alvast bedankt,

David
 
PHP hulp

PHP hulp

07/05/2024 15:03:09
 
Wouter J

Wouter J

19/11/2012 13:37:26
Quote Anchor link
Quote:
Hoe kijken browsers hier precies tegenaan en hoe kijkt googlebot hier tegenaan?

Dat heeft eigenlijk niet heel veel er mee te maken. Het is meer wat voor waarde/betekenis de specificatie aan deze elementen geven, de browsers/bots proberen zich dan hieraan te houden.

Een division element (<div>) heeft geen enkele betekenis, een element die wel een betekenis heeft moet altijd voorrang krijgen op de division.

We moeten een element hebben die de 2 groene blokken aan elkaar koppelt. Het heeft geen titel, dus we kunnen geen artikel gebruiken, de groene blokken zijn meer artikelen. Je hebt dus 2 keuzes: article of division voor het rode blok. Welke je gebruikt ligt aan hoe belangrijk je het rode blok vind: Is het meer dan een element om de groene blokken in het midden te houden (dus een section) of is styling zijn enige taak (dus een division).
 
Ozzie PHP

Ozzie PHP

19/11/2012 13:55:27
Quote Anchor link
Aangezien de beide blokken wel met elkaar te maken hebben, zou ik gaan voor <section>.
 
Ward van der Put
Moderator

Ward van der Put

19/11/2012 14:01:42
Quote Anchor link
Een vaker gebruikte workaround voor browsers die geen HTML5 ondersteunen, is een surrogaat-div:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<article>
  <div class="article">
     ...
  </div>
</article>


Wouter J heeft zeker een punt: als je géén volwaardige content hebt, maar alleen een blanco formulier, heeft het weinig zin het geheel te structureren als een artikel.
 
Ozzie PHP

Ozzie PHP

19/11/2012 14:11:08
Quote Anchor link
Ward, je kunt toch een section gebruiken? Surrogaat-divs lijkt me geen mooie oplossing. Er is een stukje javascript waardoor oudere browsers ook de html5 elementen herkennen.
 
Wouter J

Wouter J

19/11/2012 14:12:24
Quote Anchor link
Ward, dat moet je zeker niet doen (dat surrogaat ding). Elke browser kan elk element ondersteunen, je hoeft alleen HTML5shiv in te laden. De manier van jou verpest je semantiek. (en waar heb ik het over content?, een article element is ook voor interactieve widgets)

En ik zat te denken dat dit misschien nog beter is:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<article>
    <h1>Create a new paste</h1>

    <!-- ... input element -->

    <section>
        <h1>Options</h1>

        <ul>
            <!-- ... options -->
        </ul>
    </section>
</article>
 
Ward van der Put
Moderator

Ward van der Put

19/11/2012 15:05:10
Quote Anchor link
De semantische vraag is meer: moet je een formulier dat evident geen artikel met content is, verheffen tot artikel met article en dat aansluitend structureren met section? Daarvoor hebben we fieldset met legend.

De workaround met surrogaat-div's is inderdaad mede bedoeld om te voorkomen dat je JavaScript voor een andere workaround nodig hebt. Dat is dus kiezen uit twee kwaden en dat is per definitie nooit ideaal.
 
Kris Peeters

Kris Peeters

19/11/2012 15:29:09
Quote Anchor link
Wouter J op 19/11/2012 14:12:24:
... je hoeft alleen HTML5shiv in te laden. ...


Die ken ik niet.
Is dat enkel die .js file laden?
 
Wouter J

Wouter J

19/11/2012 16:57:53
Quote Anchor link
Kris, ja dat klopt. Je moet dit js'je inladen (meer informatie hier en hier).

Ward, je hebt inderdaad ook wel een punt. Dit kan ook een oplossing zijn:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<section>
    <h1>Create a new Paste</h1>

    <form ...>
        <fieldset>
            <!-- input boxje -->
        </fieldset>
 
        <fieldset>
            <legend>Options</legend>

            <!-- options -->
        </fieldset>
    </form>
 
Kris Peeters

Kris Peeters

19/11/2012 17:40:46
Quote Anchor link
(kleine aanvulling, vanuit een ander perspectief...)
Wat trouwens ook helpt, is de manier waarop HTML omgaat met syntax, vooral dan met syntax die de parser niet begrijpt.
talen zoals php of javascript gaan vlug een parse error gooien en weigeren verder te werken.

De HTML parser reageert meer volgens volgende principes:
- ofwel begrijp ik het ofwel negeer ik het
- als er iets ontbreekt, probeer ik het aan te vullen, met de default

Dat maakt HTML een ideale taal om organisch te evolueren, zonder dat daar speciaal een nieuwe software versie
voor nodig is.

voorbeeld: <input type="email">
Oude browsers kennen type="email" niet, maar dat zorgt niet voor problemen. Oude browsers negeren het attribute en maken er zelf een <input type="text"> van.

Ook nieuwe tags kunnen relatief gemakkelijk worden toegevoegd.
Ik heb vlug even een custom tag gemaakt <kris>; FF en Chrome geven het element weer zoals andere tags.
(Je hoort me niet zeggen dat het een goed idee is om custom elementen te maken, ik maak gewoon een punt over het parsen van HTML...)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<!doctype html>
<html>
  <head>
    <style>
      kris {
        width: 400px;
        height: 200px;
        display: block;
        border: 1px solid #000;
      }
    </style>
  </head>
  <body>
    <kris>
      Hello world!
    </kris>
  </body>
</html>
 
Ozzie PHP

Ozzie PHP

19/11/2012 17:45:19
Quote Anchor link
De <kris> tag bestaat dan ook gewoon:

The <kris> tag defines a reversed zig-zag division or section in an HTML document.
The <kris> tag is used to group reversed zig-zagged block-elements to format them with CSS.
 
Wouter J

Wouter J

19/11/2012 17:49:32
Quote Anchor link
Kris, mooi verhaaltje en precies wat HTML zo leuk en tegelijkertijd moeilijk maakt.

Quote:
Ik heb vlug even een custom tag gemaakt <kris>; FF en Chrome geven het element weer zoals andere tags.

IE8 en lager gaan hier net iets anders mee om, ze halen het element gewoon weg uit de dom. Om dit te voorkomen gebruik je een hack die HTML5shiv in het groots toepast maakt: Je voegt hem toe aan de dom voordat hij gemaakt is:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<script>
document.createElement('kris'); // nu wordt <kris> goed gebruikt
</script>


Het enige waar je mee moet uitkijken is dat het geen User Agent Styles (default stijlen) meekrijgt. Hierdoor moet je zelf aangeven of het display: block; of inline is ect.

Hoe parser om moeten gaan met fouten is ooit eens helemaal uitgezocht en beschreven als een standaard door Hixie (Ian Hickson), erg droge stof maar misschien wel goed om eens te lezen: http://www.whatwg.org/specs/web-apps/current-work/#parsing

Leuke artikelen van Hixie waarin hij zijn bevindingen in het toen nog parser paradijs uitlegt: http://ln.hixie.ch/?start=1037910467&count=1 , http://ln.hixie.ch/?start=1138169545&count=1 en http://ln.hixie.ch/?start=1137740632&count=1

@ozzie, weet je dat zeker? Heb je misschien een bron? (hij wordt namelijk niet in de HTML5 specs beschreven)
Gewijzigd op 19/11/2012 17:51:10 door Wouter J
 
Ozzie PHP

Ozzie PHP

19/11/2012 18:05:59
Quote Anchor link
Wouter J op 19/11/2012 17:49:32:
@ozzie, weet je dat zeker? Heb je misschien een bron? (hij wordt namelijk niet in de HTML5 specs beschreven)

Het is het kris-kras element!! Whooeehahaha... sorry, het was een grapje :D
Neem me niet kwalijk...
 
David Bekker

David Bekker

19/11/2012 20:58:28
Quote Anchor link
Hoi,

Bedankt voor alle reacties. Had opeens 12 mailtjes in mijn mailbox :s (Van een gmail account... ? )

Html5Shiv kende ik al, gebruikte ik al ooit eens. Werkte erg goed.

Ik ga verder nog een beetje rondlezen bij de linkjes die gepost zijn en dan ga ik wel een keuze maken
 
Wouter J

Wouter J

19/11/2012 21:36:53
Quote Anchor link
Quote:
Het is het kris-kras element!! Whooeehahaha... sorry, het was een grapje :D
Neem me niet kwalijk...

Haha...slik..ai... Ik dacht, het zou toch niet een grap zijn...

David, de meeste linkjes zijn dingen die half iets met dit te maken hebben, de discussie over hoe het moet (en de 3 à 4 ideeën die gegeven zijn) zijn waarschijnlijk interessanter om je vraag op te lossen.
Gewijzigd op 19/11/2012 21:37:25 door Wouter J
 
David Bekker

David Bekker

19/11/2012 21:47:37
Quote Anchor link
Ik gaf het al op toen ik een scrollbar van minder dan 1 centimeter groot zag staan.. Mijn god. Ik ga dat toch niet allemaal lezen..

Ik had zelf ook helemaal niet aan fieldset gedacht, zat de nieuwe html5 elements te kijken en hier stond fieldset niet tussen omdat die natuurlijk niet nieuw was. Had mezelelf een beetje gelimiteerd tot "nieuw". Ik denk dat ik fieldset met een section neem!

Bedankt,
 
Wouter J

Wouter J

19/11/2012 21:51:41
Quote Anchor link
Quote:
Ik gaf het al op toen ik een scrollbar van minder dan 1 centimeter groot zag staan.. Mijn god. Ik ga dat toch niet allemaal lezen..

Oh je bedoelt de specificaties, nee die moet je niet helemaal willen lezen. Gewoon als je opzoek bent naar de betekenis van een element gaan zoeken op die pagina (Ctrl+f) naar dat element, die link aanklikken en de beschrijving voor dat element lezen.
 
David Bekker

David Bekker

23/11/2012 22:59:33
Quote Anchor link
Nog een vraag. Voor de titel van een fieldset. <legend>, <h2> of <legend><h2> ?
Gewijzigd op 23/11/2012 23:00:00 door David Bekker
 
Eddy E

Eddy E

24/11/2012 10:08:09
Quote Anchor link
Zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<legend>Wat dan ook</legend>



In tegenstelling tot wat http://www.w3schools.com/tags/tag_legend.asp geeft: doe het zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<form>
 <h2>Your information</h2>
   <fieldset>
     <legend>Personalia:</legend>
     <label for="naam">Name</label><input name="naam" type="text" >
     <label for="email">Email</label><input name="email" type="text">
     <label for="dateofbirth">Date of birth</label><input name="dateofbirth type="date">
   </fieldset>
   <fieldset>
     <legend>Submitting:</legend>
     <label for="submitbutton">Send</label><input name="submitbutton" type="submit" >
   </fieldset>
 </form>


W3C heeft vaak leuke dingen (zoals Google Ranking...) maar zit er nog wel eens naast.
Zo vragen ze gerust een datum in een type="text"-formaat ipv type="date".
Ook gebruiken ze dan opeens geen <label>.
Gewijzigd op 24/11/2012 10:12:11 door Eddy E
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.