Kampen Mot Layout Jank

0
12

En web side ikke er låst i stein, bare fordi det har gjort visuelt. Media eiendeler, som for eksempel bilder, kan komme inn og føre layout til å skifte basert på deres størrelse, noe som vanligvis ikke er kjent i væske oppsett før de gjør gjengi. Eller skrifter kan lastes inn og fyller layout. Eller XHRs kan bringe inn mer innhold skal plasseres på siden. Vi er alltid på å gjøre hva vi kan for å hindre at oppsettet fra flytter rundt — det er hva jeg mener med layout jank. Det er vanskelig og ingen liker det. I beste fall fører det til at du mister plassen din mens du leser; i verste fall kan det bety å klikke på noe du egentlig ikke mener det.

Mens jeg prøvde å pakke hodet mitt rundt den nye Layouten Ustabilitet API og chatte med venner, Eric Portis sa noe karakteristisk smart. I utgangspunktet, layout jank er et problem, og det blir kjempet på flere fronter:

  • Bekjempe problemet på innhold/authoring nivå: Vi har nå intrinsicsize som en HTML-attributtet og aspect-ratio som en CSS-egenskapen. Begge er utformet for denne kampen, selv om de egentlig ikke har god nettleser støtter ennå, krever DIY størrelsesforhold bokser intead. Plus, ideer som dette endre til UA stilark for å øke effektiviteten av aspect-ratio.
  • Bekjempe problemet på nettleseren atferd nivå: Bla forankring er utformet for å gjøre dette så godt. Det faktum at det er nå aktivert som standard, er en big deal. Det er også fortsatt mulig å kontrollere den med CSS hvis du har behov for det, via overløp-anker.
  • Måle problem, og det fører til: Layout Ustabilitet API er laget for dette, antagelig for å aktivere verktøy som overvåker det.