Przekazywanie rozmiaru obrazu, najlepsza praktyka


12

Jeśli opracowujesz dokument HTML ściśle przy użyciu bieżącej najlepszej praktyki unikania stylizacji poza znacznikami, w jaki sposób najlepiej komunikować się ze zmianą rozmiaru obrazu?

Dotychczasowe najlepsze praktyki wymagają wysokości i szerokości obrazu z obrazem, ponieważ będzie on renderowany szybciej niż przeglądarka czeka na pobranie obrazu, aby uzyskać jego wymiary. Ale robienie tego wydaje się sprzeczne z izolowaniem stylu z dokumentu.

Dodać atrybut id do każdego obrazu i umieścić wysokość / szerokość w css? Czy to neguje premię renderowania wbudowanej wysokości i szerokości obrazu?

Odpowiedzi:


12

Posiadanie szerokości i wysokości w elemencie IMG nie jest przestarzałe i jest zdecydowanie najlepszym sposobem na poinformowanie przeglądarki o szerokości i wysokości obrazu. Zejście z drogi, aby to zrobić, to inna droga jest zbędna i niepotrzebna (i być może głupia). Nie rób niepotrzebnej pracy dla siebie ani przeglądarki. Trzymaj się podstaw, które działają.


1
... i nie zapomnij też o ALTtagu, nawet jeśli jest pusty lub sprawdzą zgodność.
Talvi Watia,

@Tchalvak Przepraszamy, ale się mylisz. Możesz dynamicznie zastępować szerokość i wysokość poprzez programowanie po stronie serwera i / lub JavaScript. A według twojej logiki nie można również przesłonić stylów wbudowanych.
John Conde

Ups, wygląda na to, że myliłem się co do braku nadpisywania css i tak, !importantw css pozwala na przesłonięcie atrybutów szerokości i wysokości, więc początkowo użycie szerokości / wysokości działa dobrze. Teraz jednak utknąłem na pozycji do głosowania. Jeśli miałbyś ochotę edytować odpowiedź, zmieniłbym to. nie wzrusza ramionami. Nie ma to większego znaczenia.
Kzqai,

8

Odpowiedź Johna Conde jest natychmiastowa. Obrazy mają szerokość i wysokość - to część ich zawartości , a nie ich styl . Nie ma więc potrzeby „separacji” tutaj.

Jednak jeden wyjątek: CSS dla wymiarów obrazu to przydatny, jeśli masz wiele obrazów tego samego rozmiaru (np. Miniatury). Tutaj znacznie lepiej jest użyć klasy CSS, aby zmniejszyć HTML i przyspieszyć rozwój.

W przypadku projektu strony internetowej, w tym przycisków i ikon, najlepszym rozwiązaniem są duszki CSS.


+1, duszki css mają absurdalną różnicę w szybkości strony.
Kzqai,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.