Propriedade clientWidth

A propriedade clientWidth contém a largura de um elemento dentro das bordas junto com o padding, mas sem o border e a barra de rolagem.

Sintaxe

javascriptelemento.clientWidth;

Exemplo

Vamos encontrar o tamanho do elemento:

html<div id="elem"></div>
css#elem {
  width: 100px;
  height: 100px;
  border: 10px solid black;
  padding: 15px;
}
javascriptlet elem = document.querySelector('#elem');
console.log(elem.clientWidth);

Resultado da execução do código:

javascript130

Exemplo

Se o elemento tiver uma barra de rolagem, a largura do conteúdo é reduzida pela largura da barra de rolagem (aproximadamente 16px - depende do navegador, SO, dispositivo). No próximo exemplo, a largura do elemento será menor do que o esperado:

html<div id="elem">Este elemento tem uma barra de rolagem.</div>
css#elem {
  width: 100px;
  height: 100px;
  border: 10px solid black;
  padding: 15px;
  overflow: scroll;
}
javascriptlet elem = document.querySelector('#elem');
console.log(elem.clientWidth);

Resultado da execução do código:

javascript114 (depende do navegador)

Exemplo

Se o elemento estiver oculto, o clientWidth será igual a 0:

html<div id="elem"></div>
css#elem {
  display: none; /* elemento oculto */
  width: 100px;
  height: 100px;
  border: 10px solid black;
  padding: 15px;
}
javascriptlet elem = document.querySelector('#elem');
console.log(elem.clientWidth);

Resultado da execução do código:

javascript0

Veja também

  • a propriedade clientHeight,
    que contém a altura de um elemento dentro das bordas
  • o método getComputedStyle,
    que obtém o valor da propriedade CSS de um elemento