CSS 2: Líneas horizontales

En esta página se comentan las propiedades que se pueden aplicar a una línea horizontal <hr /> de una página web:

Tamaño: width y height

La propiedad height establece la altura de la línea.

hr {
  background-color: black;
  height: 10px;
}

La propiedad width establece la anchura de la línea. Se suele expresar como porcentaje.

hr {
  background-color: black;
  height: 10px;
  width: 50%;
}

Color: color y background-color

La propiedad background-color establece el color de la línea, aunque en Firefox la línea debe tener más de 2px de altura para ser visible y en Internet Explorer y Chrome debe tener establecida la propiedad height.

Incorrecto en Firefox Incorrecto en Internet Explorer Incorrecto en Chrome
hr {
  background-color: red;
}

Incorrecto en Firefox Correcto en Internet Explorer Correcto en Chrome
hr {
  background-color: red;
  height: 1px;
}

Incorrecto en Firefox Correcto en Internet Explorer Correcto en Chrome
hr {
  background-color: red;
  height: 2px;
}

hr {
  background-color: red;
  height: 3px;
}

hr {
  background-color: red;
  height: 10px;
}


En Firefox la propiedad color establece el color del borde de la línea, pero en Internet Explorer y Chrome no lo hace.

Correcto en Firefox Incorrecto en Internet Explorer Incorrecto en Chrome
hr {
  color: red;
}

Correcto en Firefox Incorrecto en Internet Explorer Incorrecto en Chrome
hr {
  color: red;
  height: 1px;
}

Correcto en Firefox Incorrecto en Internet Explorer Incorrecto en Chrome
hr {
  color: red;
  height: 10px;
}


En Firefox, Internet Explorer y Chrome la propiedad border-color establece el color del borde de la línea.

hr {
  border-color: red;
}

hr {
  border-color: red;
  height: 1px;
}

hr {
  border-color: red;
  height: 10px;
}

Alineación: margin-left, margin-right y width

Si no se indican los márgenes, las líneas se alinean al centro.

hr {
  background-color: red;
  height: 10px;
  width: 50%;
}


Para situar la línea en una posición determinada, se deben utilizar las propiedades margin-left y margin-right, sin utilizar la propiedad width. Los valores de estas propiedades se pueden expresar como distancias o como porcentajes.

hr {
  background-color: red;
  height: 10px;
  margin-left: 0%;
  margin-right: 50%
}

hr {
  background-color: red;
  height: 10px;
  margin-left: 50%;
  margin-right: 0%
}

hr {
  background-color: red;
  height: 10px;
  margin-left: 50%;
  margin-right: 25%
}


Internet Explorer no interpreta correctamente las propiedades margin-left y margin-right cuando se utilizan junto con width.

En el ejemplo siguiente, la línea se sitúa a la izquierda del todo en Firefox y Chrome, pero en el centro en Internet Explorer:

Correcto en Firefox Incorrecto en Internet Explorer Correcto en Chrome
hr {
  background-color: red;
  height: 10px;
  margin-left: 0%;
  width: 50%;
}

En el ejemplo siguiente, la línea se sitúa a la derecha del todo en Firefox y Chrome, pero en el centro en Internet Explorer:

Correcto en Firefox Incorrecto en Internet Explorer Correcto en Chrome
hr {
  background-color: red;
  height: 10px;
  margin-right: 0%;
  width: 50%;
}

En el ejemplo siguiente, la línea se sitúa a partir del centro en Firefox y Chrome, pero en el centro de la mitad derecha en Internet Explorer:

Correcto en Firefox Incorrecto en Internet Explorer Correcto en Chrome
hr {
  background-color: red;
  height: 10px;
  margin-left: 50%;
  width: 25%;
}