¿Hay alguna forma de que LESS aplique el selector secundario inmediato (>) en su salida?
En mi estilo. Sin, quiero escribir algo como:
.panel {
...
> .control {
...
}
}
y haz que MENOS genere algo como:
.panel > .control { ... }
css
css-selectors
less
Dave
fuente
fuente
Respuestas:
ACTUALIZAR
En realidad, el código de la pregunta original funciona bien. Puedes seguir con el
>
selector de niños.Encontré la respuesta.
Tenga en cuenta la falta de espacio entre ">" y ".", De lo contrario no funcionará.
fuente
.panel >.control
.div > p
ydiv>p
. La consistencia siempre usaría espacio entre selectores (eche un vistazo al CSS generado).La forma oficial:
&
siempre se refiere al selector actual.Ver http://lesscss.org/features/#features-overview-feature-nested-rules
fuente
div > p
odiv >p
? El&
combinador es la forma canónica de hacerlo en MENOS, no mis sentimientos. Tu explicación es retórica. Algunas personas escriben su CSS en una sola línea ...La sintaxis correcta sería la siguiente, mientras que el uso de '&' sería redundante aquí.
De acuerdo con menos pautas , '&' se usa para parametrizar ancestros (pero aquí no existe tal necesidad). En este ejemplo menos , &: hover es esencial sobre : hover, de lo contrario, resultaría en un error sintáctico. Sin embargo, no existe tal requisito sintáctico para usar '&' aquí. De lo contrario, todos los anidamientos requerirían '&' ya que esencialmente se refieren al padre.
fuente
En caso de que necesite apuntar a más selectores:
fuente
Además, si tiene como destino el primer elemento secundario, como el primero
<td>
de un<tr>
, podría usar algo como esto:esto ayuda a reducir las declaraciones de clases cuando no son necesarias.
fuente