¿Hay alguna manera de ajustar la posición de list-style-image?
Cuando uso el relleno para los elementos de la lista, la imagen permanecerá en su posición y no se moverá con el relleno ...
css
image
html-lists
datisdesign
fuente
fuente
list-style-image
si no se puede colocar? Parece que, como resultado, la mayoría de las personas están usando soluciones alternativas como::before
y en subackground-image
lugar.Respuestas:
Realmente no. Su relleno (probablemente) se aplica al elemento de la lista, por lo que solo afectará el contenido real dentro del elemento de la lista.
El uso de una combinación de fondo y estilos de relleno puede crear algo similar, por ejemplo
Es posible que desee agregar estilo al contenedor de la lista principal (ul) para colocar los elementos de la lista con viñetas, este artículo de A List Apart tiene una buena referencia inicial.
fuente
top
valor funcionó para mí en lugar del relleno superior.background: url(images/bullet.gif) no-repeat left 8px;
Normalmente oculto el tipo de estilo de lista y uso una imagen de fondo, que es movible
El "7px 7px" es lo que alinea la imagen de fondo dentro del elemento y también es relativo al relleno.
fuente
Una posible solución a esta pregunta que aún no se mencionó es la siguiente:
Ahora puede usar la parte superior / izquierda de li: before para colocar la nueva viñeta. Tenga en cuenta que el ancho y la altura de li: before deben ser las mismas dimensiones que la imagen de fondo que elija. Esto funciona en Internet Explorer 8 y superior.
fuente
Tuve el mismo problema, pero no pude usar la opción de fondo (y no quería usar varios fondos), así que pensé en otra solución
Este es un ejemplo para un menú que tiene un indicador cuadrado para el elemento de menú activo / actual (el estilo de lista predeterminado no está configurado en otra regla)
crea un cuadrado usando un carácter cuadrado con la pseudo clase ": before" y se puede posicionar libremente usando un posicionamiento absoluto.
fuente
Esto es lo que hice para que los pequeños bloques grises estuvieran en el lado izquierdo y en el centro del texto con una mayor altura de línea:
Espero que esto ayude a alguien: D
fuente
La solución que decidí al final fue modificar la imagen en sí para agregar un poco de espacio.
El uso de una imagen de fondo en la li como algunos sugieren funciona en muchos casos, pero falla cuando la lista se usa junto con una imagen flotante (por ejemplo, para que el texto se ajuste a la imagen).
Espero que esto ayude.
fuente
Otra opción que puede hacer es la siguiente:
Use (0 3px) para posicionar la imagen de la lista.
Funciona en IE8 +, Chrome, Firefox y Opera.
Utilizo esta opción porque puede cambiar fácilmente el estilo de lista y es muy probable que ni siquiera tenga que usar una imagen. (violín abajo)
http://jsfiddle.net/flashminddesign/cYAzV/1/
ACTUALIZAR:
Esto tendrá en cuenta el texto / contenido que entra en la segunda línea:
Agregue relleno-izquierda: a la li si desea más espacio entre la viñeta y el contenido.
http://jsfiddle.net/McLeodWebDev/wfzwm0zy/
fuente
O puedes usar
fuente
Creo que lo que realmente desea hacer es agregar el relleno (actualmente está agregando a <li>) a la etiqueta <ul> y luego los puntos de viñeta se moverán con el texto de <li>.
También está la posición de estilo de lista en la que podrías mirar. Afecta cómo las líneas se envuelven alrededor de las imágenes de viñetas.
fuente
como "una respuesta" pero una modificación menor
funciona en varios navegadores, solo ajusta el relleno y el margen
Editar para anidado: agregue este estilo para agregar margen izquierdo a la lista sub-anidada
fuente
Estoy usando algo como esto, me parece bastante limpio y simple:
El código anterior funciona como es en la mayoría de mis casos.
Para un ajuste exacto puede modificar
vertical-align
, por ejemplo:Puede activar
list-style: none
enli
lugar deul
si lo prefiere.fuente
Encuentro la respuesta aceptada un poco fudge, demasiado debe empujar con relleno adicional y comandos css.
Nunca agrego relleno para enumerar elementos personalmente, normalmente controlando la altura de su línea y el margen ocasional es suficiente.
Cuando tengo un problema de alineación con imágenes de estilo de lista personalizadas, solo agrego un píxel o dos de espacio adicional alrededor del lado que sea necesario para ajustar su posición con respecto a cada línea de lista.
fuente
solución con fontawesome
fuente
Oculta la imagen de viñeta predeterminada y úsala
background-image
ya que tienes mucho más control como:fuente
fuente