7.1 Elemento <iframe>
O elemento <iframe> em HTML é usado para embutir outro documento HTML no documento atual. Isso permite exibir o conteúdo de outras páginas web dentro do documento principal, criando uma oportunidade de integrar vários recursos, como vídeos, mapas, documentos e outras páginas web.
O elemento <iframe> cria um frame embutido que pode exibir outro documento HTML. Esse documento pode ser carregado de qualquer URL e funcionar de forma independente do documento principal.
Sintaxe:
<iframe src="URL"></iframe>
Exemplo de uso:
<iframe src="https://www.example.com" width="600" height="400" title="Exemplo de iframe"></iframe>
Atributos
src: URL do documento que será carregado no<iframe>width: largura do frame (pode ser especificada em pixels ou porcentagens)height: altura do frame (pode ser especificada em pixels ou porcentagens)title: uma breve descrição do conteúdo do frame (importante para acessibilidade)name: nome do frame, que pode ser usado para direcionar links e formuláriossandbox: define restrições para o conteúdo do frame, aumentando a segurançaallow: determina quais funcionalidades podem ser usadas no<iframe>(por exemplo,allowfullscreenpara modo tela cheia)
7.2 Atributo allowfullscreen
O atributo allowfullscreen permite ativar o modo tela cheia para o conteúdo carregado no <iframe>. Sem esse atributo, o conteúdo não poderá entrar em modo tela cheia.
Sintaxe:
<iframe src="https://www.example.com" allowfullscreen></iframe>
Exemplo de uso:
<iframe
width="560"
height="315"
src="https://www.youtube.com/embed/dQw4w9WgXcQ"
allowfullscreen>
</iframe>
O modo tela cheia permite que o usuário visualize vídeos ou outros recursos em tela cheia, melhorando a experiência do usuário.
7.3 Atributo allow
O atributo allow define quais funcionalidades podem ser usadas no <iframe>, como acesso à geolocalização, câmera, microfone e modo tela cheia.
Sintaxe:
allow="geolocation; microphone; camera; fullscreen"
Exemplo de uso:
<iframe
src="https://www.example.com"
allow="geolocation; microphone; camera; fullscreen">
</iframe>
Vantagens:
- Controle sobre funcionalidades: permite especificar quais funções e APIs podem ser usadas pelo conteúdo embutido
- Gerenciamento de permissões: oferece flexibilidade no gerenciamento de acesso a diferentes funcionalidades, como geolocalização e câmera
7.4 Atributo sandbox
O atributo sandbox é usado para aplicar restrições ao conteúdo carregado no <iframe>. Ele impede a execução de determinadas ações, como execução de scripts ou abertura de pop-ups, aumentando assim a segurança.
Sintaxe:
sandbox="allow-scripts allow-same-origin"
Valores do atributo sandbox:
allow-forms: permite o envio de formuláriosallow-modals: permite o uso de janelas modaisallow-orientation-lock: permite o bloqueio de orientação da telaallow-pointer-lock: permite o bloqueio do ponteiroallow-popups: permite a abertura de pop-upsallow-popups-to-escape-sandbox: permite que pop-ups escapem da sandboxallow-presentation: permite acesso à API de apresentaçõesallow-same-origin: permite execução de scripts da mesma origemallow-scripts: permite execução de scriptsallow-storage-access-by-user-activation: permite acesso ao armazenamento por ativação do usuárioallow-top-navigation: permite navegação de nível superiorallow-top-navigation-by-user-activation: permite navegação de nível superior por ativação do usuário
Exemplo de uso:
<iframe
src="https://www.example.com"
sandbox="allow-scripts allow-same-origin">
</iframe>
Vantagens:
- Segurança: impede a execução de scripts potencialmente maliciosos e limita a funcionalidade do conteúdo embutido
- Controle de acesso: permite aos desenvolvedores especificar exatamente quais funcionalidades são permitidas para o conteúdo embutido
7.5 Atributo loading
O atributo loading controla como o <iframe> é carregado, permitindo adiar o carregamento até que o elemento esteja visível na tela (carregamento preguiçoso).
Valores do atributo loading:
- lazy: adia o carregamento do
<iframe>até que o elemento esteja visível - eager: o carregamento do
<iframe>ocorre imediatamente, independentemente de sua visibilidade
Sintaxe:
loading="status"
Exemplo de uso:
<iframe
src="https://www.example.com"
width="600"
height="400"
loading="lazy">
</iframe>
Vantagens:
- Otimização de desempenho: o carregamento preguiçoso reduz a quantidade de dados carregados e acelera o tempo de carregamento da página
- Redução do uso de recursos: permite carregar apenas os elementos que o usuário realmente vê e usa
GO TO FULL VERSION