se supone, el un elemento tiene un ancho asignado, este no se contrae ni se expande sin importar el contenido. en tu caso, como unico se contrae/expande es si el elemento contenedor sufre cambios en dimensiones. lo referente al texto, es normal porque al no haber espacio para ubicar el contenido, este debe excederse de las dimensiones del elemento. si lo que te molesta es que se visualice fuera de elemento, tienes dos opciones: esconderlo con mecanismo de scroll, o esconderlo sin scroll.
Código:
selector{
...
overflow:auto o hidden;
}