Belajar Element HTML: <source>

Tag <source> digunakan untuk menentukan beberapa sumber file media pada elemen <picture>, <audio> atau <video>

Tag ini memungkinkan kamu untuk menawarkan konten media yang sama dalam berbagai format file untuk memberikan kompatibilitas pada browser yang mendukungnya.

Syntax

Tag <source> ditulis seperti <source src="" type=""> (tanpa tag penutup) dengan URL media yang tercantum diantara tanda kutip ganda dari atribut src`.

Atribut type dapat digunakan untuk menentukan tipe sumber daya media yang membantu browser untuk menentukan apakah dapat memutar file tersebut sebelum mengunduhnya.

Seperti ini:

<audio controls>
	<source src="tune.wma" type="audio/x-ms-wma">
	<source src="tune.mp3" type="audio/mpeg">
</audio>
<picture>
  <source media="(min-width: 800px)" srcset="/images/html/sunset-360.jpg 360w,
    /images/html/sunset-720.jpg 720w,
    /images/html/sunset-1440.jpg 1440w" sizes="33.3vw">
  <source srcset="/images/html/sunset-720.jpg 2x,
    /images/html/sunset-360.jpg 1x">
  <img src="/images/html/sunset.jpg" alt="Picture of a Ha Long Bay sunset">
</picture>

src

URL tempat media di-hosting.

"/images/html/tiramisu.jpg"

Kamu dapat menggunakan URL relatif .

"{{site.url}}/images/html/traffic.jpg"

Kamu dapat menggunakan URL absolut .

srcset

Menentukan daftar sumber file berbeda untuk media yang sama . Browser akan memilih yang terbaik untuk digunakan.

"/images/html/sunset-360.jpg 360w,
/images/html/sunset-720.jpg 720w,
/images/html/sunset-1440.jpg 1440w"

Kamu dapat menggunakan deskriptor lebar seperti 360w . Nilai ini dibagi oleh salah satu dari ukuran sumber (didefinisikan dalam atribut size ) untuk mendapatkan kerapatan piksel .

@html

sizes

Menentukan daftar berbagai sumber ukuran . Kamu dapat menggabungkan masing-masing dengan media query .

"(min-width: 800px) 1440px, 720px"

Browser akan menggunakan gambar 1440px (didefinisikan dalam srcset ) jika viewport lebih besar dari 800px.
Jika sebaliknya akan menggunakan 720px .

@html

type

Menentukan sumber file sesuai MIME type.

"image/jpg"

Kmau hanya dapat menggunakan tipe MIME audio, video, atau picture.

media

Menentukan media query untuk sumber file <picture>.

"(min-width: 800px)"

Media hanya akan digunakan pada viewports yang lebih besar dari 800px.