CSS-tools

Gratis CSS Stretch Sizing Generator

Genereer CSS met het stretch-sleutelwoord voor fill-available-sizing in block-, flex-, grid- en absoluut gepositioneerde layouts.

Tool laden...

Wat is CSS Stretch Sizing Generator?

Het CSS stretch-keyword (Chrome 138+) is de standaardwaarde voor fill-available-sizing en vervangt de vendor-prefixed -webkit-fill-available en -moz-available keywords. Wanneer u width: stretch instelt, wordt het element zo groot dat het de beschikbare ruimte vult met margin-box-sizing —het element past in het bevattende blok. Dit verschilt van width: 100% dat content-box-sizing gebruikt en vaak overloopt wanneer padding, border of margin aanwezig zijn. stretch werkt in block-, flex-, grid- en absoluut gepositioneerde lay-outcontexten.

Snel antwoord

Gebruik width: stretch of height: stretch voor gestandaardiseerde fill-available-sizing. In tegenstelling tot width: 100% gebruikt stretch margin-box-sizing, waardoor padding en border geen overflow veroorzaken. Vervangt -webkit-fill-available en -moz-available met een enkel gestandaardiseerd keyword. Chrome 138+, Firefox 130+, Safari 18.2+.

Last updated: 2026-05-30

Beperkingen

  • Stretch wordt nog niet in alle browsers ondersteund. Chrome 138+, Firefox 130+ en Safari 18.2+ ondersteunen het. Houd vendor-prefixed fallbacks (-webkit-fill-available, -moz-available) en een width: 100%-fallback voor oudere browsers.
  • Stretch werkt alleen op elementen met block-, flex-, grid- of absoluut gepositioneerd display. Inline-elementen, tabelcellen en vervangen elementen (img, video, iframe zonder expliciete formaatbepaling) ondersteunen stretch-sizing niet.
  • In flex- en grid-contexten kan stretch onverwacht interageren met uitlijningseigenschappen. Een flex-item met align-self: stretch en width: stretch kan conflicterende formaatinstructies geven —het stretch-keyword op de formaateigenschap heeft voorrang op uitlijningsstretch.

Sources:MDN Web Docs · W3C Specifications · jquery.app on GitHub

Zo gebruik je deze tool

  1. Selecteer uw lay-outcontext —het gedrag van stretch verschilt licht tussen block-, flex-, grid- en absoluut gepositioneerde elementen.
  2. Kies de as die u wilt strekken (width, height of beide via inset: 0 voor abspos).
  3. Bekijk de lay-outspecifieke uitleg over hoe stretch interageert met margins, padding en het bevattende blok in uw gekozen context.
  4. Kopieer de gegenereerde CSS en vervang bestaande width: 100%-patronen of vendor-prefixed fill-available-declaraties.

Waarvoor je het kunt gebruiken

  • Vervang width: 100% op een input- of select-element dat overloopt door padding en border —stretch gebruikt margin-box-sizing, waardoor de totale box in de container past.
  • Standaardiseer cross-browser fill-available-sizing door -webkit-fill-available en -moz-available te vervangen door het standaard stretch-keyword.
  • Laat een absoluut gepositioneerd element uitrekken tot de randen van zijn gepositioneerde voorouder zonder expliciete top/right/bottom/left-waarden.

Gebruik

Praktische voorbeelden

Voorbeeld

Volledige breedte input zonder overflow

Een zoekformulier heeft een input met padding: 8px 12px en border: 2px. Met width: 100% loopt de input 28px aan elke zijde over. Door te wijzigen naar width: stretch past de margin-box in de container, waardoor de input gelijk blijft met de formuliergrenzen.

Voorbeeld

Migreren van vendor-prefixed fill-available

Een verouderde stylesheet gebruikt width: -webkit-fill-available met een -moz-available fallback. Vervang beide door width: stretch —het standaard keyword werkt hetzelfde en wordt ondersteund in Chrome 138+, Firefox 130+ en Safari 18.2+. De fallback-declaraties kunnen blijven voor oudere browserversies.

Veelgemaakte fouten

  • Verwachten dat stretch zich identiek gedraagt aan width: 100% in block-lay-out —100% gebruikt content-box-sizing en negeert padding/border op het element zelf, terwijl stretch margin-box-sizing gebruikt. In de meeste gevallen is stretch het gewenste gedrag voor inputs en formulierelementen.
  • Stretch gebruiken op een flex-item wanneer de flex-container align-items: stretch heeft —het stretch-keyword op het item overschrijft de stretch-uitlijning van de container, wat onverwachte formaatbepaling kan opleveren.
  • Aannemen dat stretch werkt in inline-lay-outcontexten —stretch is alleen van toepassing op elementen met een block-, flex-, grid- of absoluut gepositioneerd display-type. Inline-elementen negeren stretch en vallen terug op intrinsieke breedte.

Verificatie

  1. Inspecteer het element in DevTools en controleer of de berekende breedte of hoogte overeenkomt met de verwachte fill-available-grootte —het element mag niet overlopen, zelfs niet met padding en border.
  2. Pas de viewport of container aan en controleer of het element op alle formaten uitrekt om de beschikbare ruimte te vullen. Vergelijk zij aan zij met een width: 100%-referentie om het verschil te zien bij smalle viewports.

FAQ

Vragen over CSS Stretch Sizing Generator

Hoe verschilt stretch van width: 100% qua padding en border?

width: 100% is relatief aan de content-box-breedte van het bevattende blok, waarna padding en border worden toegevoegd —het element loopt over. stretch bepaalt de margin-box-grootte om de beschikbare ruimte te vullen, dus padding en border worden afgetrokken van het totaal, waardoor het element in de container blijft. Dit maakt stretch het gedrag dat de meeste ontwikkelaars van width: 100% verwachten, vooral voor formulierelementen.

Werkt stretch in andere writing modes dan horizontal-tb?

Ja. stretch respecteert de writing mode van het element. In verticale writing modes (vertical-rl, vertical-lr) rekt width: stretch uit langs de inline-as (verticaal) en height: stretch langs de block-as (horizontaal), overeenkomstig de schrijfrichting. Dit maakt stretch meer writing-mode-bewust dan vaste pixel- of percentageformaten.

Wat is het verschil tussen stretch en het nieuwere fill-available-keyword?

fill-available en stretch zijn dezelfde waarde met verschillende namen. De CSS-specificatie stelde oorspronkelijk fill-available voor, maar hernoemde het naar stretch v贸贸r implementatie. stretch is de canonieke naam. Beide resulteren in dezelfde intrinsieke maatberekening in ondersteunende browsers, maar alleen stretch is gegarandeerd toekomstbestendig.

Gerelateerde tools

Meer css-tools

Css

CSS Carousel Generator

Generate native CSS carousel markup with scroll-snap, scroll buttons, scroll markers, and accessible list structure. No JavaScript required.

Open tool

Probeer ook

Probeer ook

Html

CSP Hash Generator

Genereer CSP-hashwaarden voor inline scripts en styles. Hash exacte code met SHA-256, SHA-384 of SHA-512.

Open tool