A introdução de unidades de comprimento percentual de viewport (vh e vw) em CSS3 capacitou os desenvolvedores com controle preciso em layouts responsivos. No entanto, os navegadores não interpretam essas unidades nativamente, representando um desafio para a compatibilidade entre plataformas.
Para superar essa limitação, os desenvolvedores adotaram plug-ins JavaScript e jQuery que traduzem vh e unidades vw em valores de pixel, suportando seu uso em navegadores.
Juntamente com a fonte dimensionamento, as unidades vh e vw podem ser empregadas com segurança para dimensionar elementos. O exemplo abaixo demonstra a aplicação de unidades vh tanto para altura quanto para largura:
div { height: 6vh; width: 20vh; /* Using vh for both width and height */ }
O plug-in jQuery de amostra faz uso do evento window.resize para atualizar a conversão de pixels automaticamente, garantindo que o layout permaneça responsivo às alterações nas dimensões da janela de visualização. A versão atualizada deste plugin por elclanrs, jquery.columns, estende esta funcionalidade para facilitar layouts responsivos.
A função parseProps é responsável por converter unidades de viewport em valores de pixel. Ao iterar pelas propriedades CSS, ele identifica quaisquer valores com unidades vh ou vw e realiza a conversão. O objeto resultante com valores de pixel é então aplicado ao estilo CSS por meio de $.fn.css.
O plug-in se integra perfeitamente ao método css nativo, permitindo que os desenvolvedores usem unidades vh e vw diretamente em suas declarações de estilo CSS. O plug-in lida com a conversão nos bastidores, fornecendo uma solução conveniente e compatível com vários navegadores para dimensionamento baseado em janela de visualização.
O exemplo a seguir demonstra o uso do plug-in:
$('div').css({ height: '50vh', width: '50vw', marginTop: '25vh', marginLeft: '25vw', fontSize: '10vw' });
Ao aproveitar os plug-ins JavaScript e jQuery, os desenvolvedores podem aproveitar o poder das unidades de janela de visualização para layouts responsivos, garantindo desempenho consistente em vários navegadores.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3