Layout CSS - largura e largura máxima


Índice

    Mostrar índice


Usando largura, largura máxima e margem: auto;

Conforme mencionado no capítulo anterior; um elemento em nível de bloco sempre ocupa toda a largura disponível (estica-se para a esquerda e para a direita o máximo que pode).

Definir a largura de um elemento no nível do bloco impedirá que ele se estique até as bordas do seu recipiente. Então, você pode definir o margins para auto, para centralizar horizontalmente o elemento dentro de seu contêiner. O o elemento ocupará a largura especificada e o espaço restante será dividido igualmente entre as duas margens:

This <div> element has a width of 500px, and margin set to auto.

Nota: O problema com o <div> acima ocorre quando a janela do navegador é menor que a largura o elemento. O navegador então adiciona uma barra de rolagem horizontal à página.

Usar max-width em vez disso, nesta situação, melhorará o manipulação de pequenas janelas pelo navegador. Isso é importante ao tornar um site utilizável em dispositivos pequenos:

This <div> element has a max-width of 500px, and margin set to auto.

Dica: redimensione a janela do navegador para menos de 500 px de largura, para ver a diferença entre os dois divs!

Aqui está um exemplo das duas divs acima:

Exemplo

div.ex1 {
  width: 500px;
  margin: 
auto;
  border: 3px solid #73AD21;
}

div.ex2 {
  max-width: 500px;
  
margin: auto;
  border: 3px solid #73AD21;
}

Experimente você mesmo →

<!DOCTYPE html>
<html>
<head>
<style>
div.ex1 {
  width: 500px;
  margin: auto;
  border: 3px solid #73AD21;
}

div.ex2 {
  max-width: 500px;
  margin: auto;
  border: 3px solid #73AD21;
}
</style>
</head>
<body>

<h2>CSS Max-width</h2>

<div class="ex1">This div element has width: 500px;</div>
<br>

<div class="ex2">This div element has max-width: 500px;</div>

<p><strong>Tip:</strong> Drag the browser window to smaller than 500px wide, to see the difference between 
the two divs!</p>

</body>
</html>