ti-enxame.com

Redução de CSS para carregamento mais rápido / menos largura de banda

A compactação de CSS/Remoção de regras não utilizadas para uma página específica vale a pena em termos de largura de banda ou podemos confiar no cache (cabeçalhos/última modificação) para remover essa sobrecarga na natureza?

Felicidades

Além disso, boa sorte com todos beta!

9
Aiden Bell

Reduzir o tamanho dos arquivos certamente reduzirá a largura de banda e o tempo de carregamento da página. Na primeira vez que um usuário acessa seu site, ele não tem nada em cache e, para a maioria dos sites, os visitantes pela primeira vez representam a maior parte do tráfego.

Além disso, verifique se a compactação gzip está ativada. Isso fará uma quantia drástica para reduzir a largura de banda.

8
Matthew Shanley

Existem muito mais locais em potencial para otimização que terão um impacto maior ...

Se você procura estritamente um ganho de desempenho, a otimização da fonte CSS é bastante baixa na cadeia alimentar.

O excesso de fragmentos na fonte CSS sofrerá um pequeno impacto na primeira vez que as folhas de estilo forem carregadas. O armazenamento em cache deve cuidar do problema a partir de então.

2
Evan Plaice

Eu não acho que é um ou outro. A redução do tamanho do arquivo ajudará o usuário na primeira vez em que acessar o arquivo. O armazenamento em cache ajudará em sua segunda visita.

2
jessegavin

A qualquer momento, você pode remover coisas e melhorar a velocidade do carregamento, mesmo que seja insignificante. Além disso, é uma boa prática remover o material que você não está usando para maior clareza do código.

1
Jason

Você pode obter o melhor dos dois mundos, minificar o arquivo no tempo de execução e compactar com gzip a saída.
O arquivo de origem permanece legível quando você precisa editá-lo, mas é compactado quando você o baixa

primeiro: use o htaccess para dizer ao Apache para tratar todos os arquivos css como scripts php e para compactar a saída quando do tipo text/css

em .htaccess AddHandler php5-cgi .css AddType text/css .css AddOutputFilterByType DEFLATE text/css

segundo: use o buffer de saída com uma função de retorno de chamada para reduzir o código css antes do início do download, também defina o tempo de expiração para que o arquivo seja armazenado em cache

no seu arquivo css

<?php
ob_start("trima");
header("Content-type: text/css; charset=utf-8");
ob_start();
date_default_timezone_set('GMT');
$lasmod = "Last-Modified: " . strftime ("%a, %d %b %Y %T GMT", filemtime (__FILE__));
Header($lastmod);
$offset = 3600*24*30*12;
$expire = "Expires: " . date("D, d M Y H:i:s", time() + $offset) . " GMT";
Header($expire);
function trima($str) {
    $str = str_replace(array("\n", "\r", "\t", "\o", "\xOB"), '', $str); // remueve enter tabs y demas
    $str = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $str); // remueve comentarioa
    $str = ereg_replace("[ ]+", " ", $str);                         //remueve espacios multiples
    $rep = array( '{ '=>'{', ' }'=>'}', '; '=>';', ', '=>',', ' {'=>'{', '} '=>'}', ': '=>':', ' ,'=>',', ' ;'=>';' ); // remueve espacios inecesarios
    $str = strtr($str, $rep);
    return $str;
}
?>
css content here

Terceiro: lucro?

0
The Disintegrator

Eu suspeitaria que depende da dinâmica do seu site. Se você tem muitos visitantes repetidos e não muitos novos, provavelmente o cache é suficiente. Se, no entanto, você tiver muitos visitantes novos (e principalmente se quiser causar uma boa primeira impressão), acho que você deve reduzir o tamanho do seu CSS o máximo possível.

0
Travis Northcutt

A remoção de CSS não utilizado obviamente melhorará o tempo de carregamento em uma página, mas você também precisará equilibrar isso com o efeito em várias páginas. Você também deseja evitar muitas solicitações HTTP.

Lembre-se, gzipping CSS é de longe a maneira mais eficaz de acelerar o carregamento de CSS. A diferença entre um arquivo com tudo e outro com alguns blocos desnecessários removidos é insignificante após o gzip.

0
DisgruntledGoat

Mesmo que o desempenho seja reduzido com a remoção de CSS não utilizado por página (e estou bastante convencido de que o cache superaria isso, a menos que você esteja falando de páginas radicalmente diferentes), é necessário levar em consideração o tempo de manutenção necessário para fazê-lo . A menos que você seja o Google, provavelmente não vale a pena gastar vários dias ao longo da vida do site para economizar cada usuário um décimo de segundo.

Muito disso tem a ver com o perfil de uso do seu site. Se você é realmente exigente, o armazenamento em cache ganha as mãos. No entanto, se você tem uma alta taxa de rejeição, pode ser melhor usar CSS otimizado (ou gastar o tempo gasto na otimização de CSS, tornando o site mais rígido!).

Uma abordagem que você pode adotar se tiver uma marcação específica da página é ter um arquivo CSS genérico em todo o site e incorporar regras por página no cabeçalho do documento HTML.

0
JasonBirch