Övningen att genomföra responsiva bilder är fortfarande i sin linda. Vi har sett många idéer och förslag på hur det ska ske och vi är tvungna att se mycket mer.
Idag ska vi titta på en fascinerande liten ram som gör det möjligt att inte bara automatiskt ändra storlek på dina bilder när visningsporten ändras, men också beskära bilderna med en viss viktig kontaktpunkt i åtanke. Otroligt nog gör det allt detta med ren CSS. Läs vidare för att se hur det fungerar.
Möt brännpunkten
Focal Point är ett GitHub-projekt och en CSS-ram skapad av Adam Bradley. Som du vet, kräver konceptet med responsiva bilder att alla bilder på din sida ändrar storlek och återflöde för att uppnå optimal layout för den aktuella visningsportstorleken. Brännpunkten tar den här idén ytterligare ett steg och ändrar inte bara dina bilder, utan grödar dem också.
Problemet med den här tanken är förstås att om du vederbörligen skördar en bild, kan du klippa ut den viktigaste delen av bilden! Till exempel, i bilden ovan, är ämnet på höger sida av bilden. Hur hindrar vi henne från att beskäras?
Lyckligtvis tillåter Focal Point att du anger ett riktat område av bilden för att behålla (kontaktpunkten). På det här sättet, när ramverket grödar din bild, kommer det att göra så på ett sätt som säkerställer att din bild fortfarande ser bra ut.
Hur fungerar det?
Genomförande av fokuspunkt är en ganska unik process, men det är ganska enkelt. Först ska vi prata om den allmänna processen som används för att välja en kontaktpunkt, då dyker vi in i koden.
När du lägger in en bild i din webbsida med hjälp av Focal Point delas den automatiskt upp i ett osynligt 12? 12 rutnät. Det spelar ingen roll vad bildens dimensioner är, nätet anpassar sig till vad du behöver.
Nu när vi vet hur bilden delas upp måste vi bestämma oss för en viss plats i det nätet som ska fungera som vår fokuspunkt. Vad det här betyder är att den punkt som vi väljer kommer att fungera som ett centralt område där skörden kommer att hända. Så om vi väljer människans ansikte, kan vi se till att de viktiga aspekterna av detta foto upprätthålls.
Processen här är att hitta ansiktet, räkna sedan rutenheter från centrum. I detta fall är hans ansikte tre enheter rätt och tre enheter upp från mitten av gallret.
Koden
Nu när vi har vår fokusering i åtanke är det dags att planera vår kod. För att börja, se till att du laddar ner projektet från GitHub och länk den medföljande CSS-filen till ditt HTML-dokument.
När du är klar, är det dags att ställa in två divider och en bildtagg. Jo, det vet jag, det är en hel del markering för en enda bild och definitivt en enorm nackdel för att använda denna ram. Här är den grundläggande uppmärkningen: