TUTORIAL: Preload images avec CSS

  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de l’utilisateur
  • Inscription: Mar 12, 2007
  • Messages: 6228
  • Loc: South-Africa
  • Status: Offline

Message Mai 16th, 2008, 4:43 am

Introduction


Donc, vous voulez des images pré-charge? Il ya deux façons de le faire. Le premier est avec le Javascript, et vous mai s'inquiéter de ce que l'utilisateur a désactivé JavaScript dans son navigateur. La deuxième variante cependant, n'utilise que CSS et (X) HTML, et je vais vous montrer le CSS (X) HTML chemin.

Où il peut être utilisé


Disons que vous avez un site qui vend des colliers en diamants, et vous avez maintenant vu (à partir de votre panneau de contrôle ou toute autre source) que la plupart des utilisateurs entrent dans votre index / page d'accueil, puis ils continuent à la page "Produits", puis ils s'en vont, cette mai-être parce qu'ils arrivent sur la page des produits et ils ont à attendre pour les images à charger et cela prend trop longtemps, alors qu'est-ce bien est, précharge les images sur l'index / page d'accueil déjà, et quand ils arrivent sur la page "Produits", les images sont déjà chargés dans la mémoire cache, ou partiellement au moins.

Le CSS:


Le CSS pour cette solution est en effet très simple, si simple, il suffit d'une seule ligne de code, et que la ligne de code se présente comme suit:
Code: [ Select ]
img.hiddenpic{display:none}

Oui, c'est tout ce que vous devez ajouter dans votre fichier CSS à des images pré-charge. Ainsi, lorsque vous ajoutez une image avec cette classe de votre code HTML les images seront chargées dans la mémoire cache pour une utilisation future, mais ils ne seront pas affichés sur la page en raison de l'affichage ": none" qui permet de masquer les images de l'utilisateur.

Le (X) HTML


Donc, ici, nous allons avoir un regard sur le code de notre index / page d'accueil. Nous allons déjà de précharger les images sur cette page, de sorte que lorsque l'utilisateur accède à la page "Produits", les images sont déjà préchargés dans la mémoire cache. Cette partie devrait être placé à droite au bas de votre page, juste avant la balise </ body>, de cette façon, toutes les autres images sur la page se charge en premier et ensuite ceux qui ont besoin d'être préchargé pour la page suivante.
Code: [ Select ]
...
<img src='diamonds-1.jpg' alt='beautiful silver diamond necklace' class='hiddenpic' />
<img src='diamonds-2.jpg' alt='something special' class='hiddenpic' />
<img src='diamonds-3.jpg' alt='diamonds are a girl's best friend' class='hiddenpic' />
<img src='diamonds-4.jpg' alt='coming soon' class='hiddenpic' />
</body>
  1. ...
  2. <img src='diamonds-1.jpg' alt='beautiful silver diamond necklace' class='hiddenpic' />
  3. <img src='diamonds-2.jpg' alt='something special' class='hiddenpic' />
  4. <img src='diamonds-3.jpg' alt='diamonds are a girl's best friend' class='hiddenpic' />
  5. <img src='diamonds-4.jpg' alt='coming soon' class='hiddenpic' />
  6. </body>


Conclusion


CSS donne une bien meilleure solution pour le préchargement des images, car il sera toujours rendu par le navigateur, où que Javascript peut être désactivé, et ce code est beaucoup plus facile à appliquer que Javascript.
Let's leave all our *plum* where it is and go live in the jungle ...
  • Anonymous
  • Bot
  • No Avatar
  • Inscription: 25 Feb 2008
  • Messages: ?
  • Loc: Ozzuland
  • Status: Online

Message Mai 16th, 2008, 4:43 am

  • Bogey
  • Bogey
  • Genius
  • Avatar de l’utilisateur
  • Inscription: Juil 14, 2005
  • Messages: 8211
  • Loc: USA
  • Status: Offline

Message Mai 26th, 2008, 10:45 pm

Awesome righteous_trespasser...Je n'ai pas pensé à faire ça. Pourquoi ne pas le faire dans un div?
"Bring forth therefore fruits meet for repentance:" Matthew 3:8
  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de l’utilisateur
  • Inscription: Mar 12, 2007
  • Messages: 6228
  • Loc: South-Africa
  • Status: Offline

Message Juin 11th, 2008, 3:59 am

Yeah travaux qui pourraient ainsi...alors que vient de mettre toute la div "display: none"...
Let's leave all our *plum* where it is and go live in the jungle ...
  • alisha0512
  • Novice
  • Novice
  • No Avatar
  • Inscription: Juin 09, 2008
  • Messages: 26
  • Status: Offline

Message Juin 16th, 2008, 2:34 am

Salut,
Je ne suis pas au courant de la CSS. Donc, s'il vous plaît dites-moi comment vais-je créer une page à l'aide de CSS?
  • casablanca
  • Proficient
  • Proficient
  • Avatar de l’utilisateur
  • Inscription: Mai 29, 2007
  • Messages: 481
  • Status: Offline

Message Juin 18th, 2008, 4:21 am

Voilà une bonne idée youve got là, mais à partir d'un point de vue de l'accessibilité, JavaScript peut-être mieux: si un navigateur ne supporte pas le JavaScript, (ou les personnes handicapées) les images ne seront pas pré-chargée - il n'y en a pas d'effets secondaires. D'autre part, si un navigateur ne supporte pas les CSS, l'utilisateur finit par voir ces images sur la page, chose que nous ne voulons peut-être - le but de XHTML / CSS est de rendre les pages plus accessibles, en séparant le contenu réel de la mise en forme, donc vous devriez essayer d'éviter d'ajouter des trucs en HTML qui ne fait pas partie des pages de contenu réel.
No Strings Attached: A JavaScript graphics demo.
  • celandine
  • Mastermind
  • Mastermind
  • Avatar de l’utilisateur
  • Inscription: Oct 30, 2007
  • Messages: 2008
  • Loc: Belgrade, Serbia
  • Status: Offline

Message Juillet 7th, 2008, 12:46 am

...mais si le navigateur ne supporte pas les css, l'ensemble de mon site ne fonctionne pas à tous? tout mon style est fait en css....... Je pense que la plupart des peuples, ces jours-ci. ce que les navigateurs ne supportent pas les css?

semble de toute façon brillante et simple R_T - Ill certainement lui donner un rapport avec le jardin botanique site. Merci!
Eagles may soar in the sky but weasels don't get sucked into jet engines.

celandine designblog
  • Bjorn
  • Born
  • Born
  • No Avatar
  • Inscription: Mai 31, 2009
  • Messages: 1
  • Status: Offline

Message Mai 31st, 2009, 5:17 am

Quote:
Supposons que vous ayez un site qui vend des colliers de diamants, et vous avez maintenant vu (à partir de votre panneau de contrôle ou de toute autre source) que la plupart des utilisateurs entrent dans votre index / page d'accueil, et ils continuent de les "produits", puis ils partent, cette mai-être parce que leur arrivée sur la page des produits et ils ont à attendre pour les images à charger, et il prend trop de temps, de sorte que bien faire, c'est, la précontrainte des images à l'index / page d'accueil déjà, et quand ils arrivent sur les "produits "Page, les images sont déjà chargées dans la mémoire cache, ou au moins partiellement.


Si les utilisateurs quittent la page des produits, car les images se chargent trop lentement, et vous place au lieu de ces images sur la page d'accueil - les mêmes utilisateurs wouldnt laisser le site à partir de la page d'accueil?

Présentation de code dans une page thats n'a jamais eu l'intention d'être vu est sémantiquement incorrecte, et d'une meilleure solution serait d'optimiser les images ou de diviser la page en petits pages, si il y en a trop d'images.
Moderator Remark: Removed personal link

Afficher de l'information

  • Total des messages de ce sujet: 7 messages
  • Modérateur: Tutorial Writers
  • Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 10 invités
  • Vous ne pouvez pas poster de nouveaux sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas éditer vos messages
  • Vous ne pouvez pas supprimer vos messages
  • Vous ne pouvez pas joindre des fichiers
 
 

© 2011 Unmelted, LLC. Ozzu® est une marque déposée de Unmelted, LLC