ID.nl logo
Responsieve website maken met Bootstrap
© Reshift Digital
Huis

Responsieve website maken met Bootstrap

Bootstrap is een populair framework voor het werken met html, css en JavaScript. Je kunt er snel professionele websites mee ontwerpen. En dan in het bijzonder zogeheten responsieve websites, die mooi meeschalen met het type apparaat waarop ze bekeken worden. Hoe gaat dat in zijn werk?

Bootstrap is vooral een goede hulp bij het maken van ‘responsive’ of responsieve websites. Responsief houdt in dat de weergave wordt aangepast aan de beschikbare ruimte. Open maar eens een website als die van de NOS in een venster en maak dit venster steeds kleiner. Let op hoe de weergave zich aanpast. Op een klein scherm zal bijvoorbeeld het menu compacter worden en verhuist een kolom van de rechterkant naar onderen. De meeste websites werken al zo en dat is voor een groot deel te danken aan Bootstrap.

We gaan aan de slag met Bootstrap en we gaan handmatig een verse start maken. Maak daarvoor eventueel een nieuw mapje voor je Bootstrap-site aan en open deze map in je favoriete teksteditor. Wij gebruiken de teksteditor Brackets.

Starten met bootstrap

Ga naar getbootstrap.com. Zorg dat rechtsboven de laatste versie is geselecteerd. Zo heb je meteen de juiste bijbehorende documentatie. Klik dan op Get Started. Blader naar onderen, naar Starter template. Klik in dit venster op Copy. Hiermee kopieer je alle html-code naar het klembord. Plak het dan in een nieuw bestand in Brackets en bewaar het als html-bestand, bijvoorbeeld index.html. Open Live Voorbeeld om te zien hoe het eruitziet. Dit wordt ons vertrekpunt. 

De html-code zal weinig verrassingen hebben. Wel is de metatag viewport nieuw. Je weet dat de viewport het zichtbare gedeelte van een pagina is. De aanduiding width=device-width geeft in feite aan dat de browser de breedte van de pagina gelijk moet stellen aan de schermbreedte van het apparaat. Als het ontbreekt, zullen apparaten zelf de weergave aanpassen, wat ze zeker op smartphones verre van optimaal doen.

Stylesheets en scripts

In de head ziet je hoe het stylesheet van Bootstrap wordt geladen. Dit bevat alle vooraf gedefinieerde stijlen die je direct kunt gebruiken. We raden aan om onder dit stylesheet een verwijzing te maken naar een eigen, nu nog leeg stylesheet, waarin je aanpassingen maakt:

<link href="css/custom.css" rel="stylesheet" type="text/css">

Deze stijlen zullen, omdat het stylesheet later is geladen, voorrang hebben boven de standaardstijlen van Bootstrap. Onderaan het html-document zie je hoe de jQuery-bibliotheek en een Bootstrap-bundel worden geladen. Die laatste omvat ook Popper.js, een soort hulpbibliotheek voor JavaScript waarvan veel Bootstrap-componenten gebruikmaken. 

Alle onderdelen worden vanaf een zogenoemd Content Delivery Network (CDN) geladen. Als je zo’n CDN gebruikt, zal altijd automatisch de dichtstbijzijnde server worden gebruikt, zodat iedere bezoeker optimale prestaties heeft. Je mag de scripts natuurlijk ook op je eigen pc (of later je hostingaccount) zetten.

©PXimport

Om te zien welke mogelijkheden je hebt, is het slim om de documentatie erbij te houden. Onder Layout zie je tips voor bijvoorbeeld het werken met grids. Ook het kopje Content verdient je aandacht. Hier lees je over alle mogelijke manieren om met afbeeldingen te werken en om bijvoorbeeld tekst of tabellen op te maken. 

Onder Components vind je uiteenlopende componenten die je kunt opnemen in je pagina. Onder Utilities zie je handige opties die je kunt gebruiken. Zo kun je door een class toe te voegen bijvoorbeeld de tekst- of achtergrondkleur wijzigen, of marges en padding beïnvloeden.

Containers en jumbotrons

We beginnen met wat tips voor de lay-out. Uitgebreide details hierover vind je in de documentatie in het betreffende gedeelte. Als voorbeeld zullen we de kop <h1> in een zogenoemde container zetten:

<div class="container"> <h1>Welkom bij deze site</h1> <p>Hier zie je onze eerste creatie met Bootstrap.</p> </div>

Omdat we hier container als classnaam gebruiken, wordt de breedte in sprongetjes aan de vensterbreedte aangepast. Dat komt door enkele @media-regels in het stylesheet, waaronder deze twee:

@media (min-width: 576px) { .container, .container-sm { max-width: 540px; } } @media (min-width: 768px) { .container, .container-sm, .container-md { max-width: 720px; } }

Wat hier wordt bepaald, is dat indien de breedte van het venster minimaal 576 pixels is, de container maximaal 540 pixels groot moet zijn. En als het venster minimaal 768 pixels is, moet de container een maximale breedte van 720 pixels aannemen. 

Gebruik je container-fluid, dan zijn zulke regels er niet en wordt steeds de volledige breedte gebruikt. Deze @media-regels vormen ook de basis voor responsieve websites. Dit soort details kun je achterhalen via het volledige stylesheet van Bootstrap (zie onderstaande alinea’) of via de ontwikkelaarstools, door rechts op een element te klikken en dan Inspecteren te kiezen.

Het is handig om de bronbestanden van Bootstrap bij de hand te hebben. Deze vind je op deze pagina onder Source files. Pak het zip-bestand na het downloaden uit in een map op je pc. Je kunt nu altijd even spieken hoe iets precies wordt aangepakt in bijvoorbeeld het stylesheet van Bootstrap, die in het mapje dist/css staat.

Met een kleine aanpassing van de classnaam maak je een zogenoemde jumbotron, een grote grijze box die de volledige schermbreedte inneemt en vooral is bedoeld om de aandacht op bepaalde content te vestigen.

<div class="jumbotron"> <h1>Welkom bij deze site</h1> <p>Hier zie je onze eerste creatie met Bootstrap.</p> </div>

Als je in de documentatie naar Utilities gaat, zie je onder Colors hoe je met een paar extra classes de kleur van de achtergrond en tekst kunt veranderen, bijvoorbeeld bg-primary om het de standaard (blauwe) achtergrondkleur te geven en text-white voor een witte tekstkleur:

<div class="jumbotron bg-primary text-white"> <h1>Welkom bij deze site</h1> <p>Hier zie je onze eerste creatie met Bootstrap.</p> </div>

Meer mogelijkheden

Op een vergelijkbare manier kun je bijvoorbeeld mooie buttons of strakkere formulieren maken. De documentatie is een onmisbare hulplijn en gelukkig heel verzorgd. En omdat het framework zo populair is, vind je op internet enorm veel voorbeelden of zelfs kant-en-klare sites die ermee zijn gebouwd. Je hebt de volledige versie van de Bootstrap-bibliotheek en kunt naar vrijheid alle componenten proberen. Ben je wat verder en heb je een goed beeld van wat je wel of niet gaat gebruiken, dan is het slim die bibliotheek wat terug te brengen.

Bootstrap maakt gebruik van Sass, een soort vereenvoudigde taal om css in te schrijven. Je herkent de bestanden aan de .scss-extensie. Zulke bestanden moeten worden omgezet naar css voordat de browser ze kan gebruiken. Daarvoor gebruik je een zogenoemde pre-processor. Het proces wordt ook wel compileren genoemd. Het voordeel van deze benadering is dat je precies kunt aangeven welke componenten van Bootstrap je wel of niet nodig hebt, zodat de uiteindelijke bibliotheek niet groter wordt dan nodig. Ook kun je persoonlijke aanpassingen mee laten nemen, bijvoorbeeld aangepaste standaardkleuren of een andere aanvangsgrootte voor het lettertype.

©PXimport

Werken met grids

Mede dankzij Bootstrap werken veel websites responsief, waarbij met een grid wordt gewerkt om de pagina in vlakken te verdelen. We laten zien hoe je dit toepast. Bij Bootstrap kun je een pagina flexibel verdelen in maximaal twaalf kolommen. Meestal zul je die niet allemaal nodig hebben en zul je ze groeperen om bredere kolommen te maken. Het grid is responsief en de kolommen kunnen zich herschikken, afhankelijk van de schermgrootte. De achterliggende techniek die Bootstrap gebruikt heet Flexbox. Dat kun je samen met CSS Grid gebruiken om complexere lay-outs te maken met alleen css.

Flexbox en CSS Grid zijn bedoeld om samen te gebruiken. Met CSS Grid is elke denkbare lay-out te maken, in een denkbeeldig grid met horizontale en verticale lijnen. Flexbox werkt maar in één richting tegelijk en is daarom eenvoudiger te doorgronden. Je kunt het ook gebruiken binnen een met CSS Grid gedefinieerde rij (horizontaal) of kolom (verticaal). Flexbox lost problemen op die met standaard css uitdagend zijn, zoals een gelijkmatige verdeling van elementen binnen de ruimte of een aantal kolommen met precies dezelfde hoogte, ongeacht de inhoud.

©PXimport

Gelijke kolommen

We vergeten Flexbox even en richten ons op het werken met grids in Bootstrap. Als eerste voorbeeld maken we een lay-out met drie kolommen die in de browser steeds dezelfde breedte moeten krijgen, onafhankelijk van de schermgrootte van het apparaat. We beginnen met een container, waar we vervolgens één rij aan toevoegen met in die rij drie kolommen met col als class:

<div class="container"> <div class="row"> <div class="col"> <h3>Kolom 1</h3> <p>Eerste kolom</p> </div> <div class="col"> <h3>Kolom 2</h3> <p>Tweede kolom</p> </div> <div class="col"> <h3>Kolom 3</h3> <p>Derde kolom</p> </div> </div> </div>

Verschillende schermgroottes

Stel dat bovenstaande opmaak zich niet leent voor kleinere apparaten, zoals een smartphone, maar eigenlijk alleen voor tablets of groter. Dan zul je een andere class moeten gebruiken dan col. We gaan de weergave richten op alle schermen vanaf een bepaalde breedte. Alle opties zie je in de documentatie van Bootstrap onder Layout / Grid

De belangrijkste zijn je col-sm-* voor kleine schermen zoals smartphones, col-md-* voor gemiddelde schermen zoals tablets, col-lg-* voor grotere schermen als een desktop-pc en col-xl-* voor nog grotere schermen. Het sterretje staat voor een bepaald getal, waarbij de som van de kolommen steeds twaalf is. We zullen dat demonstreren.

Lay-outs voor tablets

Om de lay-out op tablets en groter te richten, veranderen we alleen voor elke kolom de class col naar col-md-4. De kolommen staan dan nog steeds netjes naast elkaar vanaf een schermbreedte van 768 pixels, maar op kleinere schermen worden ze onder elkaar gezet. Merk op dat de som van de kolommen (4-4-4) twaalf is. Andere combinaties zijn ook mogelijk, zoals een 3-6-3 opstelling:

<div class="container"> <div class="row"> <div class="col-md-3 bg-info"> <h3>Kolom 1</h3> <p>Eerste kolom</p> </div> <div class="col-md-6 bg-primary"> <h3>Kolom 2</h3> <p>Tweede kolom</p> </div> <div class="col-md-3 bg-info"> <h3>Kolom 3</h3> <p>Derde kolom</p> </div> </div> </div>

Nog meer responsiviteit

We gaan een nog wat flexibelere lay-out maken. Het doel is dat op apparaten met groot scherm (aangegeven door col-lg-*) de kolommen naast elkaar staan, zoals hierboven in 3-6-3-opstelling. Bij een gemiddelde schermbreedte (col-md-*) moeten de eerste twee kolommen in een verhouding van 1:2 naast elkaar staan en moet de derde kolom naar onderen verhuizen. Dat kun je als volgt bereiken:

<div class="container"> <div class="row"> <div class="col-md-4 col-lg-3 bg-info">Kolom 1</div> <div class="col-md-8 col-lg-6 bg-primary">Kolom 2</div> <div class="col-md-12 col-lg-3 bg-info">Kolom 3</div> </div> </div>

Zoals je ziet is er een klein beetje rekenwerk nodig. Op apparaten met gemiddeld scherm worden de eerste kolom (col-md-4) en tweede kolom (col-md-8) naast elkaar in een 1:2-verhouding gezet, en omdat de som twaalf is, wordt de derde kolom (col-md-12) automatisch daaronder gezet. Bootstrap geeft je die flexibiliteit. Op grotere schermen wordt de pagina normaal volgens 3-6-3 opgebouwd.

Probeer het in je browser door de vensterbreedte langzaam kleiner of groter te maken. Er zijn meer trucjes, maar de belangrijkste basisprincipes hebben we nu doorgenomen, waarmee je nu verder kunt experimenteren! 

Kom je er niet helemaal uit? Op de website van Bootstrap vind je bij Examples handige voorbeelden van lay-outs die met het framework zijn gemaakt. Je kunt het als inspiratie voor je eigen creaties gebruiken of zelfs voorbeelden een-op-een overnemen, als je dat wilt.

▼ Volgende artikel
Zo verklein je mappen en schijven met NTFS-compressie in Windows 11
© ID.nl
Huis

Zo verklein je mappen en schijven met NTFS-compressie in Windows 11

Heb je een pc met weinig opslagruimte dan loont het wellicht om in Windows 11 de bestandscompressie in te schakelen. Dan hebben we het niet over zip-archieven, maar de NTFS-compressie waarmee je bestanden, mappen en zelfs volledige schijven kunt verkleinen.

Dit gaan we doen

In dit artikel ontdek je hoe je NTFS-compressie inzet om mappen of een volledige schijf kleiner te maken. Je ziet waar je de optie vindt in Windows Verkenner, welke stappen je doorloopt en wanneer deze methode wel of niet zin heeft. Ook leggen we uit hoe je een gecomprimeerde map herkent en hoe je de compressie later weer uitschakelt. Zo kun je bewuster omgaan met beperkte opslagruimte zonder je bestanden te hoeven verplaatsen.

Lees ook: Dit is er nieuw in de 25H2-update van Windows 11

Eerst een waarschuwing

Dankzij compressie is het mogelijk om meer data op te slaan op dezelfde ruimte. In Windows 11 kun je NTFS (New Technology File System) aanspreken. Het nadeel van deze methode is dat het extra rekenkracht vraagt iedere keer dat je zo'n gecomprimeerd bestand opent. Hetzelfde gebeurt wanneer je na de bewerking het bestand sluit en er recompressie wordt toegepast. Gebruik deze methode dus voor data die je lange tijd niet gebruikt en waar extra laadtijd nauwelijks hinderlijk is.

Je kunt op deze manier ook een volledige schijf comprimeren, maar we raden af om dit met de opstartschijf te doen. Gebruik deze functie niet op usb-sticks en alleen op snelle schijven zoals ssd's. Het prestatieverlies zou teveel doorwegen. Bij jpg-afbeeldingen of mp3- of mp4-mediabestanden is de winst verwaarloosbaar.

Een gecomprimeerde map herken je aan twee blauwe pijltjes in de rechterbovenhoek.

Map comprimeren

Open Windows Verkenner en navigeer naar de map waarvan je de inhoud wilt verkleinen. Klik met de rechtermuisknop op de map en in het snelmenu selecteer je Eigenschappen. Open het tabblad Algemeen en klik op Geavanceerd. Bij de Geavanceerde kenmerken zie je onderaan Compressie en versleutelingskenmerken. Plaats een vinkje bij Inhoud comprimeren om schijfruimte vrij te maken. Klik op OK en klik daarna op Toepassen.

Selecteer indien nodig de optie Wijzigingen toepassen op deze map, submappen en bestanden en klik op de OK-knop. Net zoals voorheen kun je zo'n map openen en de bestanden bekijken in Verkenner. Om de volledige map te decomprimeren, open je opnieuw de Eigenschappen en volg je de beschreven stappen.

Comprimeer de map via de Eigenschappen.

Station comprimeren

Het is mogelijk om een volledige schijf te comprimeren. Open Windows Verkenner en klik op Deze pc in het linkerdeelvenster. Klik met de rechtermuisknop op de opslagschijf die je wilt comprimeren. Selecteer onder het gedeelte Apparaten en stations de optie Eigenschappen. Daarna kun je opnieuw de optie aanvinken: Dit station comprimeren om schijfruimte te besparen.

Het is ook mogelijk om een volledig station te comprimeren.

Ook leuk:

Een stoomwals van Lego
▼ Volgende artikel
Review Ring Floodlight Cam Pro (2e gen) – Grondige tuinbewaking met 4K-beeldkwaliteit
© Ring
Zekerheid & gemak

Review Ring Floodlight Cam Pro (2e gen) – Grondige tuinbewaking met 4K-beeldkwaliteit

Ring heeft de tweede generatie van zijn Floodlight Cam Pro uitgebracht. De voornaamste verbetering van deze schijnwerpercamera is de 4K-beeldkwaliteit. Dankzij twee felle ledlampen leent dit product zich goed voor het bewaken van een grote buitenruimte, zoals een oprit of diepe achtertuin.

Goed
Conclusie

De Ring Floodlight Cam Pro (2e gen) heeft een heleboel voordelen, zoals een scherp beeld, twee felle verstelbare ledlampen, luide sirene en gebruiksvriendelijke app. Daarmee zijn alle ingrediënten aanwezig om op een laagdrempelige manier je tuin of oprit te bewaken. Daarentegen is de adviesprijs van 279,99 euro nogal fors. En daarmee ben je er nog niet, want voor het bewaren van opnames heb je een betaald Ring Home-abonnement nodig. Er bestaan als alternatief (veel) goedkopere floodlight-camera's met lokale opslag, al ondersteunen die veelal geen 4K-beeldkwaliteit.

Plus- en minpunten
  • Robuuste behuizing
  • App geeft zeer duidelijke instructies
  • Gebruiksvriendelijke montage
  • Accepteert 2,4GHz- en 5GHz-netwerken
  • Slimme meldingen
  • Slimme zoekfunctie
  • Felle richtbare schijnwerpers
  • Gedetailleerde opnames in 4K
  • 10× digitaal inzoomen
  • Luide sirene
  • Erg duur
  • Montage alleen op plek van bestaande lamp
  • Geen ondersteuning ethernet
  • Betaalde video-opslag in de cloud

Zodra we de productdoos openmaken, valt één ding meteen op. Ring levert geen voedingskabel of accu mee. De Ring Floodlight Cam Pro (2e gen) kun je namelijk alleen op de plek van een bestaande buitenlamp monteren. De IP65-gecertificeerde behuizing is grotendeels van kunststof. Desalniettemin voelt de constructie solide aan, dus die gaat niet zomaar stuk. Gunstig is dat je zowel de camera als beide schijnwerpers naar eigen wens kunt richten.

©Maikel Dijkhuizen

Behalve de bewakingscamera bevat de productdoos een montagebeugel, montagegereedschap en beveiligingssticker.

Montage

Voor de juiste montage-instructies ben je aangewezen op de Ring - Always Home-app. Overigens is dat geen straf, want duidelijke filmpjes en Nederlandstalige aanwijzingen loodsen je soepel door de installatieprocedure. Film de QR-code en volg vervolgens alle stappen. Een beetje kennis van elektra is trouwens geen overbodige luxe.

De fabrikant levert montagegereedschap mee, zoals pluggen, afdekdoppen en een schroevendraaier. Je hebt verder alleen nog maar een boormachine nodig. De montagebeugel bevat een kroonsteentje waarop je de gekleurde stroomdraden kunt aansluiten. Daarnaast heeft de montagebeugel een geïntegreerde waterpas, zodat je de beveiligingscamera helemaal recht hangt. Houd rekening met een ideale ophanghoogte van ongeveer drie meter.

©Maikel Dijkhuizen

Het aansluiten van de elektradraadjes op het geïntegreerde kroonsteentje is een precisiewerkje.

Configuratie

Na de montage volgt de configuratie in de Ring - Always Home-app. Je koppelt deze beveiligingscamera van Google binnen een mum van tijd aan een 2,4GHz- of 5GHz-netwerk. Vervolgens downloadt en installeert het apparaat op eigen houtje een firmware-update. Helaas kun je deze beveiligingscamera niet met een bekabeld netwerk verbinden. Zorg op de beoogde locatie dus voor voldoende wifi-dekking. Bij te weinig bandbreedte schakelt deze beveiligingscamera automatisch terug naar een lagere videokwaliteit.

Je geeft tijdens de configuratie optioneel andere gezinsleden toegang tot de camera. Bepaal ook welke slimme meldingen je wilt ontvangen. Na detectie van personen, voertuigen en andere bewegingen stuurt de Floodlight Cam Pro je desgewenst pushnotificaties. Hierbij stel je zelf de gevoeligheid van de bewegingssensor en detectiezone in. Je kunt ook nog gebieden blokkeren, zodat je bijvoorbeeld geen activiteiten in een naburige tuin vastlegt.

©Maikel Dijkhuizen

Neem even de tijd om alle stappen van de uitgebreide configuratie door te nemen.

Opnemen in 4K

De maximale videokwaliteit van 3840 × 2160 pixels betaalt zich uit, want de beelden zijn zeer scherp. Zo'n hoge resolutie is voor bewakingsdoeleinden eigenlijk niet per se nodig, al biedt het wel degelijk voordelen. Na maximaal 10× inzoomen zijn nummerborden namelijk nog goed leesbaar. Met een behoorlijk brede kijkhoek van 140 graden (horizontaal) bewaak je probleemloos een grote tuin of oprijlaan.

In het donker hebben de twee schijnlampen met een totale lichtopbrengst van 2000 lumen veel meerwaarde. Je ziet 's avonds en 's nachts op grote afstand precies wat er bij jouw woning gebeurt. Daarbij fungeert de Floodlight Cam Pro ook nog als veredelde buitenlamp. Voor een beveiligingscamera heeft dit model een luide sirene. Wie weet schrikt dat insluipers af. Dankzij ondersteuning voor tweewegaudio kun je op afstand een gesprek starten.

Je kijkt in de app eenvoudig opnames terug. Met behulp van de kalender en duidelijk vormgegeven tijdlijn bepaal je welk moment je wilt terugzien. Er is ook een slimme zoekfunctie ingebakken, zodat je met specifieke trefwoorden als 'hond', 'pakket' en 'rode auto' relevante opnames kunt vinden. Een nadeel is dat Ring-beveiligingscamera's geen lokale opslag ondersteunen. Wil je opnames van gebeurtenissen opslaan of 24/7 opnemen, dan heb je een betaald Ring Home-abonnement nodig.

©Maikel Dijkhuizen

De Ring Floodlight Cam Pro maakt scherpe opnamen.

Ring Floodlight Cam Pro (2e gen) kopen?

De Ring Floodlight Cam Pro (2e gen) heeft een heleboel voordelen, zoals een scherp beeld, twee felle verstelbare ledlampen, luide sirene en gebruiksvriendelijke app. Daarmee zijn alle ingrediënten aanwezig om op een laagdrempelige manier je tuin of oprit te bewaken. Daarentegen is de adviesprijs van 279,99 euro nogal fors. En daarmee ben je er nog niet, want voor het bewaren van opnames heb je een betaald Ring Home-abonnement nodig. Er bestaan als alternatief (veel) goedkopere floodlight-beveiligingscamera's met lokale opslag, al ondersteunen die veelal geen 4K-beeldkwaliteit.

Lees ook: Bedraad of draadloos: wat is de beste slimme deurbel voor jou?