2011 7 juillet 2011

La question de la CSS bidouille

J'avais lu cela dans un certain blog ... pensé qu'il était bon de cataloguer ce pour réf avenir .... pourrait également être une question importante interview que vous a demandé un jour ....

Écrire un extrait de CSS qui permettra d'afficher un paragraphe en bleu dans les anciens navigateurs, rouge dans les navigateurs plus récents, vert et noir dans IE6 dans IE7

#content p{color:blue}
html>body #content p {color:red}
* html #content p{color:green}
html>body #content p {*color:black;}


2010 20 mai 2010

Re-Cycling CSS: A Look At frameworks CSS

Re-vélo est Buzzword et dans le développement Web, cela signifie pas différent. Il économise de l'énergie, en termes d'effort!

Au cours des années à écrire et à créer CSS HTML à partir de dessins, j'ai suivi quelques bonnes pratiques, à la poursuite de gain de temps et d'énergie dans ce que nous couramment terme comme «Re-inventer la roue». Maintes et maintes fois, je me suis dit que je dois créer quelques modèles, une norme réutilisable CSS que je voudrais utiliser OUT OF THE BOX dans mon travail futur. Bien que n'étant pas complètement, mais j'ai réussi à atteindre certains des objectifs.

En favorisant, Re-utilisation de CSS, j'ai eu un coup d'oeil aux cadres CSS peu qui sont couramment disponibles pour nous et a décidé de les mettre en oeuvre, car elles sont essayé et testé et créé par beaucoup de développeurs expérimentés, que moi-même. Plus important encore "éviter de réinventer".

Bien que la connaissance commune aux anciens combattants, j'ai essayé à la plume de certains des principaux concepts et meilleures pratiques ou les pensées qui a disparu dans la création de ces cadres, de faire RE-CYCLING de CSS possible. Espérons que cela aidera certains développeurs CSS qui sont sur le point de et récemment montés à bord du train en marche CSS!

Touches recyclage des CSS:

Utilisez Conventions de nommage

Ce doit être le facteur le plus important pour rendre le CSS / HTML réutilisable. Donner des noms uniformes pour des éléments de page permet la réutilisation des composants de la page et de leurs styles avec peu ou modifications. En ligne avec cet argument, même HTML5, dans un changement majeur par rapport aux changements de ses prédécesseurs, est d'introduire une certaine savoir structurelle balises. <article>, <section>, <header>, <aside>, et <nav> [ Qu'est-ce que HTML5 apporter? ]. Même avec le HTML 4 (ou inférieur), il est préférable de nommer sections standard de votre page consistanly comme dans l'exemple simple ci-dessous ...

Rappelez-vous, la plupart des pages sur votre projet, finissent par avoir les mêmes éléments de base structurelles. Identifier ces éléments communs de page de base ....

  <div id="conteneur">
    <div id="header"> ... </ div>
    <div id="nav"> ... </ div>
    <div id="sidebar"> ... </ div>
    <div id="footer"> ... </ div>
   </ Div> 

Réinitialiser les styles par défaut (réinitialisation CSS): Que vous utilisiez un cadre ou écrire votre propre, vous devez fournir Réinitialise CSS [ Quelles sont Réinitialise CSS? ], car ils réduisent ou parfois d'éliminer les incohérences visuelles qui se produisent entre les différents navigateurs. Dans des mots simples le mécanisme de Reset CSS définit les styles de l'élément HTML à des valeurs zéro ou nulle, ce qui annule toutes les valeurs par défaut du navigateur ils peuvent peser. Ceci fournit une table rase pour définir les propriétés de ces éléments nuls de toute valeur par défaut est User-Agent [ CSS2.1 utilisateur par défaut de l'agent de feuille de style ]. Tous les cadres CSS ne sont d'un mécanisme de remise à zéro. Si vous écrivez vous-même réinitialiser CSS, un mot de prudence, c'est que s'il vous arrive d'oublier de réinitialiser une propriété de clé, il pourrait conduire à contre-navigateur questions, qui sont très difficiles à déboguer. Rappelez-vous, Conservez une copie des styles de réinitialisation et de les déposer dans chaque nouveau projet que vous créez.

  body, div, dl, dt, dd, ul, ol, li,
  h1, h2, h3, h4, h5, h6,
  pré, la forme, fieldset, input, select, textarea,
  p, blockquote, table, th, td
  {
    border: 0px;
    margin: 0;
    padding: 0;
  } 

Définir par défaut (Styles de base) aux éléments:

Après avoir configuré (à zéro ou null) les valeurs par défaut de certains attributs de certains éléments HTML, il est nécessaire d'appliquer des styles à travers tous les cas de ces éléments. Ces paramètres par défaut peuvent varier selon la conception ou selon les meilleures pratiques que vous suivez.

La plupart des cadres CSS, présente toujours quelques nouveaux paramètres par défaut, en plus de la réinitialisation des styles par défaut du navigateur.
Ces valeurs par défaut étant vide des valeurs par défaut User-Agent (dépouillé par le Reset CSS), ceux-ci seront dans tous les navigateurs.

Rappelez-vous, les styles de base sont utilisées pour définir des styles qui vont être utilisés à l'échelle de conception. par exemple.

  html {font-size: 77%; font-family: Arial, sans-serif;}
 forte, h1, h2, h3, h4, h5, h6 {font-weight: bold;} 

Styles abstraits pour le commun des composants HTML et des classes ordinaires:

La plupart de projet composée de plusieurs pages auront communes éléments HTML utilisés à travers le site, pour par exemple Une sorte de formes, les alertes et les erreurs, les popups personnalisées, etc Lightboxes Depuis ces composants sont utilisés de nouveau à travers des projets, il sera utile de prévoir un ensemble de classes associées à des styles prédéfinis pour ces composants et vous pouvez vous épargner beaucoup de temps.

En dehors de la définition de définitions réutilisables styles pour les éléments communs HTML, nous pourrions les classes abstraites styles se rapportant à la typographie, la couleur ou même mise en page. Je me tendent vous utilisez ... les classes ordinaires comme Clearfix, Font08, FontGrey, alignl, etc DisplayB

  formulaire de saisie {border: 0px; background: # ffffff; padding: 0px 10px; _padding: 0px 0px; hauteur: 26px; color: # 000000; line-height: 30px; font-size: 1.1em;}
 forme textarea {border: 0px; background: # ffffff; color: # 000000; font-size: .9 em; line-height: 1.5em; overflow: visible;}
 . Fbold {font-weight: bold; color: # CCCCCC;}
 . Fgrey {color: # 666666;}
 . Flightgrey {color: # bbbbbb;}
 . Clearfix {clear: both;}
 . Diviseur {border-top: 1px solid # 647B06; border-bottom: 1px # solide 9CC00A; hauteur: 0px;}
 . Displayb {display: block;}. Displayn {display: none;}
 . Alignr {text-align: right}. Alignc {text-align: center}
 . Floatr {float: right;}. Floatl {float: left;} 

Correctifs pour bizarreries courants du navigateur

Différents navigateurs mettre en œuvre le code CSS et d'assurer un niveau variable de soutien pour les spécifications CSS. Le résultat de cette .... «Quirks Browser», que nous, les développeurs sont laissés à aborder. Surtout, IE6 hante les codeurs les plus CSS avec une échéance à respecter. Les bonnes nouvelles sont l'expérience a rassemblé possibles corrections RÉUTILISABLES à ces questions (souvent appelé comme Hacks CSS ).

Rappelez-vous, Gardez ces hacks ou des corrections à portée de main

  / * Le zoom ci-dessous: 1 règle est spécifiquement pour IE6 + IE7.  * /
    * Html. Clearfix,
    *:. Premier enfant + html {clearfix
           zoom: 1;
      } 

Gardez Affiner votre CSS

  • L'habitude de recyclage ne viendra pas à vous dans la journée. Il doit développer. Alors planifiez votre Re-Cycling. Gardez cela à l'esprit que vous pourriez par défaut abstraites styles, les définitions de typographie, mise en page les styles des éléments HTML, etc Essayez de penser à l'avance.
  • En outre de revenir sur vos projets passés, il aidera à identifier les styles que vous avez tendance à utiliser souvent à travers porjects. Résumé elle.
  • Retirez tous les styles inutilisés. Cette pratique permet de garder votre framework CSS à partir d'un symptôme fréquent appelé "ballonnement" -
  • Retirer styles répétitifs.
  • Construire un ensemble de styles qui sont assez souples pour le porter ensemble des projets.

A Look At frameworks CSS

Enfin. Si vous êtes inspiré et ont l'intention d'utiliser une ou plusieurs des cadres CSS, Heres est la liste rapide de quelques unes populaires ....

  • 960 Grid System : Le système 960 Grid est un effort pour rationaliser les tâches de développement Web en fournissant des dimensions couramment utilisés, basés sur une largeur de 960 pixels. Il ya trois variantes: 12, 16 et 24 colonnes, qui peuvent être utilisés séparément ou en tandem. Rien la pensée que vous ne pouvez pas créer un pour votre propre assez facilement, Le cadre fournit des modèles de grille pour l'impression en format PDF, que l'on peut utiliser pour esquisser votre designs.Bet page, il ferait une impression professionnelle, si vous portez quelques feuilles lorsque vous allez à un client pour l'interface utilisateur collecte des besoins. Il fournit également des modèles de grille de base pour un logiciel de conception populaires comme Fireworks, Flash, InDesign, Illustrator, Photoshop, Visio, etc fournir un "starter pour dix" pour commencer votre travail de conception.
  • Plan : Plan d'action fournit distinctement classés les fichiers CSS pour réinitialiser les grilles de calcul, formulaires, d'impression, la typographie, plugins pour les boutons, les onglets et les sprites, etc Il fournit également un soutien pour IE en tant qu'entité distincte comprennent.
  • SenCSs : Contrairement aux deux ci-dessus, SenCSs (Sens prononcé), n'a pas définitions CSS pour la présentation. Il inclut les polices, les rembourrages, les marges, des tableaux, des listes, des en-têtes, blocs de citation, les formes et plus encore.
  • BlueTrip : Sa demande initiale à la gloire, c'est que, c'était une combinaison des meilleures fonctionnalités offertes par d'autres frameworks comme d'autres bleu d'impression, de voyage oli ... de là où elle tire son nom. Son jeu de fonctionnalités comprend 24 colonne de la grille, les styles de typographie, styles orm, d'impression, boutons, etc
  • Grilles YUI : Apporté à vous par le Developer Network Yahooo, soutient fluide en largeur (100%) mises en page prédéfinies ainsi que mises en page à largeur fixe à 750px, 950px, 974px et, et la capacité de personnaliser facilement à n'importe quel nombre. Comme vous pouvez le voir, sa techniquement seulement les composantes de présentation. YUI a également fourni HTML / CSS ensembles des éléments de page d'autres
  • YAML (Yet Another Mise multicolonnes)
  • Emastic

Rappelez-vous, en utilisant des cadres CSS ne signifie pas que vous êtes paresseux pour créer un de vos propres ... Cela implique que vous êtes intelligent pour apprendre de l'expérience d'autres erreurs et, gagnez du temps et augmenter la productivité!!


2010 13 mars 2010

@ Fontface: il Exprimant avec une police de votre choix; l'aide aux polices WebFonts

CSS complété l'existence de 10 ans cette année! Ceux qui ont été autour pendant un certain temps, gagner leur pain (ou non) en utilisant le CSS, alors vous pourriez connaître la façon dont nous avons été affamés pour une bonne sélection de polices de caractères. Même en l'absence de polices designers comme ceux de CSS Zen Garden ont fait usage d'images de fond CSS pour remplacer les polices dans la poursuite de faire un peu de justice à leurs desseins. Nous avons également essayé Flash / JavaScript hacks ® pour atteindre nos objectifs de conception. En aucun cas, il s'agit d'une mauvaise façon d'obtenir les polices que nous désirons dans nos conceptions web, mais certainement, ce n'est pas la façon la plus souhaitable. et plus web année designer, comme moi, ont pleinement compté sur une dizaine de polices pour leurs conceptions.

Les développements récents dans les standards du Web et des formats de polices permettent de rendre le texte HTML dans des polices de caractères autres que les mêmes polices par défaut anciens. Livré dans le "@ fontface" Decleration CSS.

@ Fontface provids une solution à un lien vers le fichier de police réel et le récupérer à partir du Web. Utilisation de @ fontface, les concepteurs peuvent utiliser des polices sans avoir à geler le texte comme les images de fond. La mise en œuvre est très simple, comme indiqué ci-dessous, mais comme toutes les bonnes choses ont une partie de l'CON, tous les navigateurs prennent en charge un «type de police" unique. Si vous prévoyez d'utiliser fontface @ dans le site avec besoin de soutien navigateur croix, alors vous aurez à fournir des sources à divers polices-types du même.

  1. TrueType - Un format conçu pour bien paraître à l'écran. Recommandé en particulier pour les navigateurs Windows (Chrome).
  2. OpenType (CFF) - Ce format est préférable pour les travaux d'impression et de ne pas toujours l'air bien sur Windows.
  3. EOT - Vous avez besoin de ce format si vous souhaitez cibler Internet Explorer. IE de ne pas utiliser n'importe quel autre format. Notre EOT seraient considérés comme "Lite", car ils ne sont ni compressées ni domaine restreint.
  4. SVG - Il s'agit d'un format XML pris en charge par certains navigateurs, y compris l'iPhone.
  5. WOFF - Ce cross-browser, le format de police uniquement sur ​​le Web est léger (données de police est compressé zip) et peut être compilé avec TrueType ou PostScript (CFF) décrit. Il est actuellement pris en charge par Firefox 3.6 +.

Utilisation de @ fontface

  @ Font-face {
 font-family: 'CalligraphyFLFRegular';
 src: url ('CalligraphyFLF.eot');
 src: local ('CalligraphyFLF'), locale («CalligraphyFLF '), format d'URL (' CalligraphyFLF.woff ') (' WOFF '), url (' CalligraphyFLF.ttf ') format (" truetype "), url (' CalligraphyFLF . svg # CalligraphyFLF ') format (' svg ');
 }
 @ Font-face {
   font-family: "Votre police";
   src: url ("fonts / font_filename.eot");
   src: local ("Autre nom"), locale ("Alternatename"),
     url ("fonts / font_filename.woff") format ("WOFF"),
     url ("fonts / font_filename.otf") format ("OpenType"),
     url ("fonts / font_filename.svg # nom_du_fichier_de_fonte") format ("svg");
   }
 h2 {font-family: "Votre police", la Géorgie, serif;} 

Comme vous pouvez le voir dans l'exemple ci-dessus, afin d'inclure la police de caractères choisie, on doit relier à un ensemble de fonttypes pour le même type de caractère. Ainsi les gens se réfèrent à lui comme "Kit de police".
Il existe des kits de polices disponibles, qui permet explicitement le lien avec le CSS @ font-face de propriété en vertu de contrat de licence utilisateur final (CLUF).

Ressources WebFont utiles:

  • Polices disponibles pour @ font-face plongement page wiki à http://webfonts.info/wiki/index.php?title=Main_Page
  • Ray Larabie . Il est un concepteur de la police de renom qui a fait des centaines de polices TrueType intéressantes disponibles gratuitement pour une utilisation sur le web. Ses polices sont élégantes, décoratives, et ludique.
  • Dieter Steffmann est un autre concepteur de la police grand. Lui aussi, a fait de nombreuses polices disponibles belles pour quiconque d'utiliser.
  • Boutique de polices : les polices offre spécialement conçus pour l'utilisation du Web. Plus de 30 des familles les plus réussies FontFont sont maintenant disponibles en FontFonts Web. FontShop dispose également d'un utilisateur détaillé WebFont guide de http://www.fontshop.com/blog/newsletters/pdf/webfontfontuserguide.pdf
  • Squirrel polices : vedette toutes les polices d'écureuil Font offre pour une utilisation avec @ font-face intégration CSS. Squirrel polices offre une quantité impressionnante de type, il est mort simple à en choisir un, et offre haut la main "kits" - La police de caractères de votre choix, dans plusieurs formats, emballés avec la démo HTML et CSS qui utilise très actuel @ font-face syntaxe . Ils offrent également un moyen de faire vos propres @ font-face kits . Si la police de caractères que vous souhaitez utiliser a été autorisé de façon appropriée (ceux qui viennent avec votre ordinateur ne sont pas nécessairement d'accord), le générateur produit EOT, SVG, et hey! Fichiers WOFF.

2009 7 novembre 2009

CSS ZOOM - Yet Another bizarrerie IE; Le passage 3 pixels

Temps et plus encore, quand tous les autres navigateurs vus se comporter comme dit par les règles du W3C, des spirales IE vous sortir de l'esprit de développement par piquer une colère, qui ne semble pas d'avoir une solution. Juste un tel homme est cette question dans IE7.

Énoncé du problème:
I et donc peut-être la plupart des autres développeurs web sérieux ont remarqué plus d'une fois, que quand il imbriqués flotteurs dans la mise en page, sur hover sur certains liens (balises d'ancrage), le récipient contenant semble se déplacer de quelques pixels vers la droite . J'ai essayé de solutions Google pour cette question, mais n'ont guère trouvé de réponse raisonnable pour savoir pourquoi et quand il se produit (qui pourrait aider à éviter ce problème de se produire), donc je n'ai jamais trouvé une solution claire au problème non plus ...

Solution possible:
Sur l'expérience, j'ai pour cent préavis de 90% de la c.-à-temps, que ce problème est résolu en ajoutant une propriété de zoom dans la définition CSS du conteneur mal se comporter ...

 # {Somediv
       zoom: 1;
 }

nouveau les raisons sont ambigus ... essayez ce ...
Certains éléments dans IE ont un "hasLayout" la propriété, qui est "vrai" par défaut. De nombreux visuels comportements CSS: par exemple, un filtre alpha ne fonctionne que sur un élément qui hasLayout. et le {zoom: 1} semble donner des éléments cibles de la propriété hasLayout .... Utile? Je ne crois pas ...

La propriété zoom est semble également pris en charge par Chrome, mais sa force l'utilisation semblent faire beaucoup d'effet négatif sur ma page ... l'essayer, Si ça marche pour vous ... si ce n'est pas, marquer cette page sous "craps CSS"


2009 28 juillet 2009

CSS2.1 utilisateur par défaut de l'agent de feuille de style

Hier, après la question que j'ai rencontré avec l'Réinitialise CSS dans Google Chrome ... J'ai pensé que de creuser un peu plus profondément dans la zone des feuilles de style de l'agent utilisateur ...
J'ai trouvé ce tableau sur les valeurs par défaut de CSS2.1 Feuilles de style User Agent ... (Pour ceux qui ignorent ce que «Feuilles de style utilisateur Agent" est suivi Qu'est-ce que l'utilisateur Fiches style de l'agent (spécification) .

Pour une liste complète des CSS 2.1 Feuilles de style par défaut des utilisateurs de l'Agent , cliquez ici


2009 27 juillet 2009

Feuilles de style: User Agent marges Mystère dans Google Chrome

Hier, comme tous les autres "Jour de la marmotte", je travaillais sur des mises en page CSS / tableless. Tout allait bien dans IE 7, FF 3 et Chrome, jusqu'à ce coup, j'ai vu des marges non-ignorables vu que dans Google Chrome. Bien que très étrange et Worring, Il était une question nouvelle bogue / que j'avais tombez sur, il y avait enfin un peu de piquant dans mon travail ordinaire. Sad (mais agréable), il s'est fixé en quelques minutes de la sonde ...

Fondamentalement, il ressemblait à Google Chrome ignoré ma Réinitialise CSS (margin: 0px). Il a effectivement été causé par la feuille de style de l'agent utilisateur (-webkit-padding-start: 40px). Donc, la solution était de remettre ce style en définissant padding: 0 les éléments indisciplinés.
Un bon moyen de prévenir ce problème de se produire à n'importe quel élément est d'utiliser un repos mondiale CSS comme suit

* {Margin: 0; padding: 0;}

Qu'est-ce que l'utilisateur Fiches style de l'agent (spécification)?
L'extrait suivant est tiré de http://meiert.com/en/blog/20070922/user-agent-style-sheets/ , lien suivi pour en savoir plus sur les feuilles de style de l'agent utilisateur

CSS 1 introduit l'idée en déclarant que chaque agent utilisateur (UA, souvent un «navigateur Web» ou «client web») aura une feuille de style par défaut qui présente des documents dans un délai raisonnable - mais sans doute banal - de manière. CSS 2 dit que les agents utilisateurs conformes doivent appliquer une feuille de style par défaut (ou se comportent comme si ils l'ont fait) et que la feuille d'un agent utilisateur de style par défaut devrait présenter les éléments de la langue du document de façon à satisfaire les attentes générales de présentation pour la langue du document; CSS 3 est susceptible d'être de l'esprit même.

Étant donné que les spécifications CSS laisser place à des implémentations d'utiliser ou non une feuille de «réel» de style pour l'affichage par défaut ou non, il n'est pas étonnant que vous ne trouvez pas une feuille de style par défaut dans le dossier d'installation à chaque navigateur. Contrairement à Internet Explorer de Microsoft, ainsi que l'Opéra, par exemple (et pour autant que je sache), les navigateurs basés sur Gecko comme Firefox et Netscape Navigator (cherchez "html.css"), mais aussi Konqueror faire assez simple à comprendre leur style par défaut.


2009 18 février 2009

Ajout DropShadow des images en utilisant CSS

Un autre tut rapide. Voici quelque chose de simple et agréable en utilisant la puissance des CSS ... mais il était d'enfant au difficile (et il n'était sûrement pas moi) pour commencer. Ajout DropShadow, peut-être un peice de gâteau pour beaucoup d'entre nous, en utilisant certains outils d'édition d'image comme Photoshop anf Fireworks etc
La raison pour laquelle, j'ai opté pour une ombre portée en utilisant le CSS, c'est que, généralement, tout en créant un modèle de page / html d'une demande, les exigences garder itération. Ce que je veux dire, c'est, dans un site Web existant avec beaucoup d'images, comme celles Affichage de la liste freinds ou une galerie d'images, il sera difficile de retraiter l'ensemble du chargement des images qui avaient déjà été déchargés d'ajouter ou de supprimer les ombres, pour que question.
Donc, si vous avez fait un peu de réflexion avant tout en créant les HTMLS d'ajouter ces divisions supplémentaires ou plus souvent la situation, c'est que vous avez une logique de boucle générer ces icônes ou vignettes dans XSL, PHP. JAVA ou de toute autre programmation / langage de script, vous pouvez l'ajouter à tout moment, est alors seulement la question de spectacle et de cacher ces ombres en utilisant la propriété CSS display, comme par les clients en constante évolution des exigences ... je havn't fait ce genre de réflexion prospective avant cette ... mais ahev dès maintenant!

Dans l'exemple ci-dessous, l'image originale est libre et l'ombre des dropshadows sont appliquées selon les besoins! AUSSI, je suis allé un peu plus, en utilisant les tours de mon Tut plus tôt (Well! ces sont probablement plus courte variété de tutoriels, de sorte qu'il ne se justifie que les qualifiant de «Tut» 's) au sujet de l'aide de la propriété CSS clip pour montrer que

Image de l'original

original_image

Résultats Ombre CSS
css_dropshadow_results
Voir la démo | Télécharger SourceFiles


2009 17 février 2009

Understandng la propriété Clip CSS

Pourquoi dois-je veux comprendre cela?? Humm ...!!

La plupart des écrivains CSS serait d'accord que la propriété CSS clip est probablement l'un de la plupart des propriétés CSS non utilisés. C'était si vrai pour moi aussi et j'ai été très heureux de le négliger, jusqu'à ce que j'ai commencé à modifier le MooTools DEUX composant Slider Bouton (Pin) (avec Range Indicator) .

Il y avait une bonne suggestion de l'un des utilisateurs de composants pour modifier le composant Slider à l'aide d'images taillées backgroud (contre une division de largeur variable) pour indiquer le domaine du slider. Ainsi vint mon temps pour entrer dans le plaisir, mais affrété par l'ONU (pour moi ofcourse) les eaux de la propriété Clip CSS.

Eh bien! comment il peut être difficile? Pas grand-chose du tout ... OUI et NON. La syntaxe à utiliser la propriété Clip CSS est assez verticale, mais la signification / usuage est un peu croocked. Avec une mémoire comme la mienne, chaque fois que je suis assis à retravailler sur mon script curseur ... J'ai tokeep renvoyant à l'usage de cette propriété CLIP, à me rappeler la logique que j'ai créé dans mon script .... DONC! pensé à l'stylo, avec un espoir de se rappeler qu'il l'avenir (et aussi pour le bénéfice de ceux qui semblent boggled par la propriété Clip CSS)

Qu'est-ce que CSS clip faire?

Clip est une partie du module d'effets visuels de CSS 2.1. Autrement dit, son travail consiste à placer une fenêtre visible sur le dessus d'un objet qui est coupé, donc détourage d'images et de création de vignettes sans avoir à créer des fichiers supplémentaires (j'ai déjà mis cette fonction pour une meilleure utilisation dans le composant Slider :) )

Utilisation de la propriété Clip CSS, vous pouvez créer une coupure en utilisant la forme rect. Comme beaucoup d'autres propriétés CSS (comme rembourrage, etc marge,), en utilisant rect nécessite quatre coordonnées Haut, Droite, Bas, Gauche (DEFT). La nature croocked de cette propriété reflète quand vous prenez un peu plus près comment calcule clip de la zone de découpage, l'utilisation de ces quatre coordonnées (envoie des cerveaux en un tirage au sort pendant un certain temps). Maintenant, pour vous confondre le fond commence à partir du haut, et le droit commence à partir de la gauche. :) . Vous voyez ce que j'ai dit? .... Ainsi ce post ...

Ce peu de confusion peut facilement disparaître, avec cette explication visuelle de la CSS Clip / rect propriété comme ci-dessous!!

Exigences clip CSS

La tâche que nous avons commencé est de couper l'image Vignette suivant dans une image plus carrée à la recherche (et aussi une image grand-angle)

original_image clip_demo
Thumbnal origine / Image Exigences clip pour Sqaure Thumbmail

Résultats clip CSS

clip_results

Voir la démo | Télécharger SourceFiles


2008 12 octobre 2008

Verticalement (et horizontalement) Centre Alignement du contenu dans une balise DIV en utilisant le CSS

Avant, nous avions à traiter avec les CSS pour créer nos mises en page, l'alignement du contenu dans une cellule de tableau semblait jeu juste enfant. Il suffit de mettre le "align" ou "valign" propriété de la table pour avoir l'alignement de votre choix, un morceau de gâteau!
Avec mises en page CSS, si nous avons "vertical-align" propriété pour les éléments, il ne semble pas être aussi simple que le "align" ou "valign" propriétés. Pour être plus specifiic le "vertical-align" ne semble jamais à résoudre tous vos problèmes, surtout si on écrire une pièce de cross-browser CSS.

Sans l'utilisation des tableaux HTML, LE PROBLÈME de centrage sur l'objet, que ce soit une image ou un texte dans une division contenant, a probablement été tous les cauchemar UI / CSS développeurs à un moment donné. Ce problème extrapole encore vos soucis d'alignement, si l'objet à être centré est de nature dynamique, c'est à dire lorsque sa hauteur est variable (hauteur inconnue).

Bien qu'il n'y ait pas de solution connue simple qui fonctionne sur toute la gamme des navigateurs que nous avons à traiter, la solution que j'ai essayé d'arriver à ne semble pas fonctionner dans les navigateurs peu que je l'ai essayé dans (IE6, IE 7 , FF).

SOLUTION:
Dans les navigateurs comme Mozilla, Opera et Safari, L'étrange comportement "vertical-align" propriété peut être mis à la raison, tout simplement en réglant le "display" propriété de la division contenant de "table-cell" (display: table-cell) .

Le problème reste encore avec la famille des navigateurs IE, qui, pourtant ne semble pas comprendre ce qu'il faut avec la "table-cell« la propriété et ignorants qu'ils sont, ils ont juste l'ignorer. La solution donnée ci-dessous, bien que simples, les annonces de quelques éléments plus DOM à votre HTML pour faire bouger les choses.

Le CSS et HTML ressemble à ceci
.outer_container {
display: table;
text-align:center;
height: 140px;
width:140px;
position: relative;
overflow: hidden;
float:left;
margin:0px 10px 0px 0px;
}
.obj_container {
display: table-cell;
vertical-align: middle;
#position: absolute;
#top: 50%;
#left:50%;
}
.obj{
#position: relative;
#top: -50%;
#left:-50%;
margin:0px auto 0px auto;
}

HTML: -
<div class="outer_container">
<div class="obj_container">
<div class="obj"> <img src="image1.jpg"/> <br/> vues: 3456 </ div>
</ Div>
</ Div>

Le résultat ressemble à ceci: -

HTML_CSS_vertical_align_vertical_middle_aligned_images

voir la démo ici | Les fichiers source Télécharger (téléchargé 448 fois)


Comprendre la solution:
Pour les navigateurs qui comprennent display: table et display: table-cell propriétés, il a rarement besoin d'explication. Pour IE, avec l'utilisation d'un hack IE spécifique (hack de hachage), nous avons absolument positionner le conteneur d'objet (obj_container) dans la moitié de la hauteur disponible. Puis objet (obj) dans est la position relative et est déplacé par la moitié de sa hauteur ... Eh bien! Il me semble comprendre le regard de la sur votre visage, mais il fonctionne. Essayez-le!
Les techniques ci-dessus sont combinés pour nous donner la solution ci-dessus navigateur croix.


Le CSS peut être facilement modifié comme ci-dessous pour obtenir, vertical-align: top ou vertical-align: bottom

TOP Aligner CSS
.obj_container_top {
display: table-cell;
vertical-align: top;
#position: absolute;
#top: 0%;
#left:50%;
}
.obj_top{
#position: relative;
#top: 0%;
#left:-50%;
margin:5px auto 0px auto;
font-family:Verdana, Arial, Helvetica, sans-serif;
font-size:10px;
color:#cccccc;
}

HTML: -
<div class="outer_container">
<div class="obj_container_top">
<div class="obj_top"> <img src="image1.jpg"/> <br/> vues: 1234 </ div>
</ Div>
</ Div>

Le résultat ressemble à ceci: -

HTML_CSS_vertical_align_vertical_top_aligned_images

Aligner en bas CSS
.obj_container_bottom {
display: table-cell;
vertical-align: bottom;
#position: absolute;
#bottom: 0%;
#left:50%;
}
.obj_bottom {
#position: relative;
#bottom: 0%;
#left:-50%;
margin:5px auto 0px auto;
}

HTML: -
<div class="outer_container">
<div class="obj_container_bottom">
<div class="obj_bottom"> <img src="image1.jpg"/> <br/> vues: 1234 </ div>
</ Div>
</ Div>

Le résultat ressemble à ceci: -

HTML_CSS_vertical_align_vertical_bottom_aligned_images

voir la démo ici | Télécharger ici


Centrage horizontal de l'objet tout simplement réalisé avec la propriété margin, en définissant la marge de gauche et la marge à droite à l'auto

On dirait que les âges, depuis que j'ai essayé de trouver une solution raisonnable à ce problème d'alignement. Mais maintenant, avec cette solution, je me sens à peu de paix.

Avec un espoir qu'un jour

  • vertical-alignement propriété CSS fonctionne comme il le fait dans une cellule de tableau, sans avoir à battre beaucoup plus autour du pot
  • Au moins, la mise en margin-top: auto et margin-bottom: auto, donnera le même résultat qu'avec la marge gauche et l'ensemble margin-right à auto
  • Les guerres du navigateur sera plus un jour.
  • Il y aura juste un navigateur pour TOUS.

Télécharger le CSS et HTML de la solution ci-dessus ici (Téléchargé 448 fois) .. pour l'intelligibilité, la CSS n'est pas optimisé

PS: Et en passant, ceux qui sont des vignettes de quelques photos que j'ai cliqué ... :)


2008 10 octobre 2008

PAS Pour IE seulement - Sélecteurs CSS enfants ne travaillent pas dans IE

CSS pour navigateurs non-IE: Son pas de nouvelles pour les développeurs CSS, les sélecteurs CSS enfants comme dans l'exemple ci-dessous, ne semblent pas fonctionner dans IE.

par exemple div> span {} un peu de CSS, qui signifie «quand un élément span est un enfant (et non pas un petit-enfant ou un grand grand enfant, etc) d'un élément de division".

Mais nous avons utilisé cette CON à notre avantage. Historiquement, le sélecteur d'enfant a été utilisé pour masquer des commandes CSS d'IE. Suffit de placer html>body en face de toute IE CSS commande de l'ignorer:

html>body .foo { CSS commands go here ;}

Cela fonctionne parce que <body> est toujours un enfant de <html> - il ne peut évidemment jamais être un petit-enfant ou arrière petit-fils de <html> .

Maintenant que IE 7 comprend le sélecteur d'enfant, vous devez insérer une balise de commentaire vide dans directement après le signe supérieur à IE 7 ne sera donc pas comprendre ce sélecteur (qui sait pourquoi?) Et sera donc totalement ignorer cette commande CSS.:

html> /**/ body .foo { CSS commands go here ;}

Si n'avez pas encore vu ces derniers avant, avoir une lecture par les moyens suivants ainsi


NDK la maison | Exprimant IT | Bouche Exprimant | Penmenship Exprimant | Awe Exprimant | m'exprimer