Considere o seguinte trecho de código de uma página web:<...

Próximas questões
Com base no mesmo assunto
Q2398319 Programação

Considere o seguinte trecho de código de uma página web:


<div id="opcoes" class="vert">

 <div class="item">Contratos</div>

 <div class="item">Convênios</div>

 <div class="item">Licitações</div>

</div>

E o respectivo código de Cascading Style Sheets:

.vert {

 display: flex;

 width: max-content;

}

.item {

 flex: auto;

 width: 110px;

}



Ao ser renderizado por um navegador web padrão, o elemento com id “opcoes” do código acima exibe três elementos div:


Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: A - dispostos em linha, com largura total igual a 330px.

Para solucionar essa questão, é necessário compreender os conceitos de CSS (Cascading Style Sheets) e a forma como eles afetam o layout de uma página web. O enunciado nos apresenta um trecho de código HTML com um elemento div contendo três div filhos, cada um com a classe "item". Além disso, nos é fornecido o CSS aplicado a esses elementos.

O elemento com id "opcoes" tem a classe "vert" atribuída a ele, que tem as seguintes propriedades no CSS:

  • display: flex; - Isso define um contexto de layout flexível para seus itens filhos, que por padrão os alinha em linha (horizontalmente).
  • width: max-content; - A largura do contêiner será a máxima possível contendo todo o conteúdo dos filhos sem quebrar as linhas.

Já os elementos com classe "item" têm as seguintes propriedades:

  • flex: auto; - Os itens filhos têm a capacidade de crescer e encolher, mas neste caso, isso é irrelevante pois a largura foi fixada.
  • width: 110px; - Cada item filho terá uma largura fixa de 110 pixels.

Ao analisarmos as propriedades aplicadas, podemos concluir que:

  • Os elementos filhos estarão dispostos em uma linha devido ao display: flex; sem a propriedade flex-direction que alteraria para coluna.
  • Como cada item filho tem uma largura de 110px e são três itens, a largura total será de 3 x 110px = 330px.

Portanto, os elementos div filhos serão dispostos em linha, e a largura total do contêiner será a soma das larguras dos itens filhos, resultando em uma largura de 330px, exatamente como afirma a alternativa A.

Lembre-se: o CSS é uma ferramenta poderosa para controle de layout e apresentação em páginas web e entender suas propriedades é fundamental para criar designs responsivos e atraentes.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

O contêiner "opcoes" terá um layout flexível (display: flex;).

Os itens dentro do contêiner serão distribuídos igualmente, que no caso é horizontal, devido ao flex: auto;.

Cada item terá uma largura fixa de 110px (width: 110px;).

Dispostos em linha, com largura total igual a 330px

Exemplo de como ficaria.

......................................................................

:   Contratos   :   Convênios   :   Licitações   :

.......................................................................

Interpretei errado, em coluna onde cada coluna possui 110 de largura...sacanagem

flex: auto; faz com que cada item flexível cresça conforme necessário, mas neste caso, a largura de cada item é definida explicitamente.

width: 110px; define uma largura fixa de 110 pixels para cada item.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo