Antes de enviar um problema, verifique se você concluiu as seguintes etapas:
Descreva o bug
Atualmente, ao combinar arquivos CSS, verificamos se há consultas de mídia aqui:
https://github.com/wp-media/wp-rocket/blob/443f2e1b902c592bd517cbaa641571bb2ddce1a5/inc/Engine/Optimization/Minify/CSS/AbstractCSSOptimization.php#L124
Não excluímos link
elementos contendo consultas de mídia como:
max-width
min-width
Por exemplo, o seguinte arquivo será combinado:
<link rel='stylesheet' media='screen and (max-width: 900px)' href='css/medium.css' />
Quando isso acontece, não envolvemos o conteúdo do arquivo em torno da consulta de mídia, o que seria a solução ideal.
Em vez disso, o adicionamos diretamente ao arquivo combinado.
As regras aí contidas podem ser aplicadas aos elementos, independentemente do que a consulta de mídia original determinou.
Reproduzir
Passos para reproduzir o comportamento:
max-width
. Nesse caso, mude, por exemplo, a cor de h1
.Comportamento esperado
Os arquivos que contêm essas consultas de mídia devem ser excluídos automaticamente ou combinados ao serem agrupados na consulta de mídia original.
Contexto adicional
Tíquete relacionado: https://secure.helpscout.net/conversation/1305858288/201378?folderId=2135277
Backlog Grooming (para uso da equipe de desenvolvimento WP Media apenas)
Obrigado pelos detalhes Vasilis. Acho que a solução mais fácil seria excluir esses arquivos da combinação de CSS, ou talvez pudéssemos fazer a solução ideal conforme sugerido.
Como veremos mudanças relacionadas ao CSS no 3.8, vamos manter isso pendente até então. Podemos mudar isso e consertar se tivermos muitos tickets relacionados a isso. Se não, vamos ver como o 3.8 acaba para decidir sobre o futuro desse recurso.
@arunbasillal Apenas uma nota rápida.
Podemos mudar isso e consertar se tivermos muitos tickets relacionados a isso.
Pode ser que uma boa porcentagem dos tíquetes relacionados ao recurso Combinar arquivos CSS seja devido ao problema específico.
Algo que vale a pena levar em consideração. 🙏
@arunbasillal & @vmanthos 3.8 com CSS Tree Shaker serão capazes de lidar com esta situação muito bem.
A solução aqui é a proposta por @vmanthos :
all
para simplesmente incluir o conteúdo do CSS na tag de mídia adequada.Com um regex, podemos identificar o atributo de mídia e, então, haverá uma mudança simples semelhante a esta:
sprintf( '<strong i="15">@media</strong> %1$s { %2$s }', $media, $css_content );
[S]
Comentários muito úteis
@arunbasillal & @vmanthos 3.8 com CSS Tree Shaker serão capazes de lidar com esta situação muito bem.
Defina uma solução ✅
A solução aqui é a proposta por @vmanthos :
all
para simplesmente incluir o conteúdo do CSS na tag de mídia adequada.Com um regex, podemos identificar o atributo de mídia e, então, haverá uma mudança simples semelhante a esta:
sprintf( '<strong i="15">@media</strong> %1$s { %2$s }', $media, $css_content );
Faça uma estimativa do esforço ✅
[S]