On en parle de partout, le nouveau Google Search Plus Your World est en place depuis quelque mois sur www.google.com et bientôt en France.
Voilà qui devrait rassurer les utilisateurs de smartphones sous Android. Le système de verrouillage de l'écran par schéma vient en effet de mettre en échec le FBI. L'histoire a de quoi faire sourire mais elle est bien réelle! Dans le cadre d'une affaire de proxénétisme, le FBI a arrêté Dante Dears, déjà condamné pour des faits similaires et qui
Chaque vendredi, l’emploi est au rendez-vous sur Frenchweb ! Commercial Webmarketing, Chef de projet technique Back End, Développeur Front-End… Retrouvez les dernières offres d’emploi du secteur Internet. Développeur Front-End / Intégrateur Senior (H/F) @ Digital Commerce Commercial Webmarketing (H/F) @ Digital Prod Chef de projet technique Back End (H/F) @ Cellfish Media Directeur marketing digital (H/F) @ Blue Search Delivery Manager (H/F) @ Hi-media Digital Game [...]
Elle sera probablement dans la liste des cadeaux au prochain Noël : le géant français Archos, acteur majeur sur le marché des tablettes tactiles d’entrée de gamme, a dévoilé une tablette spécialement conçu pour nos chérubins, la Child Pad. Commercialisée à 99€, et vendue sous la marque Arnova, la tablette est fabriquée en plastique ( les iPads des parents [...]
La deuxième édition de la conférence China Connect se tiendra le 22 et 23 mars prochain au centre culturel de Chine à Paris. Il s’agit d’un événement européen dont la vocation est de débattre des challenges et des opportunités qu’offre l’écosystème numérique chinois, en perpétuelle évolution. Marketing, m-commerce, luxe et médias sociaux seront mis à l’honneur ! Parmi les entreprises [...]
La valeur inline-block
de la propriété display
est à la mode, même si elle demeure encore trop peu connue et mal utilisée. Elle offre de multiples avantages dont le principal est de pouvoir disposer des éléments les uns à côté des autres, tout en étant dimensionnés et sans les retirer du flux.
L'un de ses inconvénients majeurs est l'apparition d'un espace indésirable et incompressible de prime abord entre les blocs. S'il n'est pas gênant, tant-mieux; sinon, de multiples techniques plus biscornues les unes que les autres existent.
Comme tous les éléments de type inline ou de contenu textuel, les objets munis de la déclaration display: inline-block respectent la règle des caractères blancs (whitespace), c’est-à-dire que n’importe quel caractère espaçant deux éléments inline-block va immanquablement apparaître entre leurs deux boîtes. Chaque caractère «espace», «tabulation», «nouvelle ligne», «retour chariot» ou «nouvelle page» peut tenir lieu de white-space et séparer les blocs visuellement.
L’espace créé par le white-space
est de l’ordre de 4 pixels, mais cela varie selon les navigateurs et la taille de police.
Dans la grande majorité des cas, cette situation n’est guère gênante. Cependant, elle peut le devenir si votre présentation doit être calée au pixel près, par exemple pour un parent de 600 pixels de large devant contenir trois paragraphes de 200 pixels chacun :
#main {
width: 600px
}
#main p {
display: inline-block;
width: 200px;
}
De nombreux concepteurs se sont penchés sur cette problématique, certains tentent de jouer avec les marges négatives, d’autres sur l’espace entre lettres (letter-spacing
). Mais à l’heure actuelle, aucune solution ultime n’a été publiée.
La solution idéale est sans aucun doute en pleine élaboration dans les laboratoires du W3C et se nommera peut-être text-space-collapse
(précédemment connue sous le nom de white-space-collapse
).
Elle n'a a priori qu'un seul défaut à l'heure actuelle : elle n'est encore reconnue par aucun navigateur. Passons donc aux autres solutions...
La première alternative et la plus logique consiste à supprimer les white-space physiquement et directement au sein du code HTML. Cela peut se faire en «collant» les éléments les uns aux autres :
<div>
<p>Lorem Elsass ipsum</p><p>réchime amet sed bissame so libero
knackes choucroute</p><p>Hopla kuglopf flammekueche</p>
</div>
On peut encore transformer les white-spaces en commentaires HTML, qui ne seront pas interprétés par les navigateurs mais préserveront visuellement les retours à la ligne, ce qui facilitera la lecture du code par un intégrateur :
</p><!--
--><p>
Ce qui donne au final :
<div>
<p>Lorem Elsass ipsum</p><!-- whitespace
--><p>réchime amet sed bissame so libero knackes choucroute…</p><!-- whitespace
--><p>Hopla kuglopf flammekueche</p>
</div>
Cette alternative, bien que parfois un peu «inesthétique» et nécessitant d'avoir accès aux fichiers HTML, se révèle sans aucun doute la plus robuste et la plus pérenne actuellement.
Via CSS, il existe également certaines techniques permettant de contourner cet espacement non souhaité.
Aucune des méthodes décrites ci-dessous ne sera parfaite, je préfère vous l'annoncer sans détour, mais elles ont un avantage indéniable également : celui de corriger le problème sans avoir à toucher à la structure HTML, et en employant la technologie adaptée, à savoir CSS.
La propriété white-space: nowrap
interdit les césures sur les espaces et autres caractères blancs, elle évite par conséquent le retour à la ligne des éléments inline-block
, ce qui aura pour conséquence de déborder visuellement de leur parent. Pour masquer ce débordement, il peut être judicieux d'employer overflow: hidden
sur le parent :
#main {
width: 800px;
overflow: hidden;
white-space: nowrap;
}
#main p {
display: inline-block;
white-space: normal;
width: 200px;
}
Cette proposition ne constitue qu'une pseudo-solution car elle ne fait que masquer le problème sans le résoudre : l'espace est toujours présent mais les blocs demeurent sur la même ligne.
Le white-space étant un caractère blanc, il est possible de l'atténuer ou de le supprimer en jouant que la propriété letter-spacing
(espacement des caractères) du parent, puis de rétablir l'espace normal au sein des enfants.
Le problème est que dans tous les cas, le rendu final dépendra – au minimum – de la police de caractères utilisée.
L'on côtoie fréquemment des valeurs telles que :
parent {letter-spacing: -0.25em}
enfants {letter-spacing: normal;}
Toutefois, la valeur de l’espace entre les lettres étant différente pour chaque police, cette méthode est à adapter au cas par cas :
Dans la pratique, cela fonctionne mais demeure un peu rédhibitoire, ne trouvez-vous pas ?
Une autre solution consiste à appliquer une marge externe droite négative à chacun des blocs enfants afin de « tracter » son successeur direct. La valeur de cette marge, après tests empiriques, a été estimée à 0,25 em, mais cela peut varier selon la fonte choisie :
chaque_enfant {margin-right: -0.3em;}
Cette technique, pour avoir été vérifiée sur un grand nombre de navigateurs, fonctionne de manière assez universelle, mais demeure empirique et peut être considérée comme un hack puisque rien n’assure sa pérennité.
Une dernière solution consiste à appliquer une taille de police nulle au parent, puis à redéfinir la taille de police au sein de chacun des blocs.
L’unité appropriée sera forcément non relative (pixels par exemple) puisqu’une unité fluide telle que em
, exprimée par rapport à l’unité parente, sera inopérante puisque égale à zéro :
parent {font-size: 0;}
chaque_enfant {font-size: 14px;}
Ce qui donne au final :
#main {
width: 800px;
font-size : 0;
}
#main p {
display: inline-block;
width: 200px;
font-size: 14px;
}
Cette technique, pour avoir été vérifiée sur un grand nombre de navigateurs, fonctionne de manière assez universelle (à l’exception de Safari sous Windows), mais peut poser des soucis d’accessibilité en cas de tailles de polices trop réduites du fait du choix d'unité en pixels (non agrandissables sur IE6 et IE7 dans certaines conditions) et nous oblige à employer un type d'unité non relatif.
Pour pallier au problème d'unité relatif, il est possible d'opter pour une unité introduite en CSS3 : rem
(pour «root em»).
Une taille de police en rem
n'est pas relative à la taille de police de son parent, mais à celle de la racine du document (donc l'élément <html>
en langage HTML). Bien que reconnue par une majorité des navigateurs récents (depuis IE9), il lui est aisé de proposer une alternative en pixels pour les anciens navigateurs de cette manière :
#main {
width: 800px;
font-size: 0;
}
#main p {
display: inline-block;
width: 200px;
font-size: 20px; font-size: 2rem;
}
L'intérêt principal est que la taille de police des éléments demeure fluide tel que le serait l'unité em
.
Cette alternative fonctionne plutôt bien sur Firefox, Chrome, Opera et Internet Explorer. Mais il demeure l'hypothétique souci d'accessibilité sur IE6 / IE7 décrit précédemment.
La méthode du «font-size: 0» est séduisante mais n'est malheureusement pas supportée par un navigateur en particulier, Safari sous Windows. Celui-ci n'accepte pas les tailles de polices de valeur zéro pour des raisons d'accessibilité.
Il n'a pas forcément tort mais cela ne nous arrange pas. Ce qui change la donne est que - aussi curieux que cela puisse paraître - Safari reconnaît très bien les tailles de polices de... 1px !
Nous allons nous servir de cette possibilité, combinée à un letter-spacing: -1px
pour parvenir à nos fins :
#main {
width: 800px;
font-size: 1px; letter-spacing: -1px;
}
#main p {
display: inline-block;
width: 200px;
font-size: 20px; font-size: 2rem; letter-spacing: normal;
}
Grâce à ce cumul de bidouilles (car il faut bien les appeler ainsi), nous obtenons le résultat souhaité sur l'ensemble des navigateurs, à l'exception cette fois d'Opera (qui n'accepte pas les valeurs négatives pour letter-spacing
).
Ce petit et rapide tour d'horizon des différentes techniques de contournement de ce fâcheux espace indésirable introduit par la propriété inline-block
nous apprend en définitive que nous n'en sommes encore qu'à un stade de l'expérimentation et du tâtonnement.
En attendant la solution ultime émanant de CSS3 mais encore non supportée, l'ensemble des techniques CSS repose actuellement sur des hypothèses et sont fortement dépendantes de contextes précis : rien de vous assure que ces bidouilles fonctionneront partout selon les configurations de vos visiteurs. C'est donc à vous de les tester au cas par cas.
La meilleure solution, si vous en avez la possibilité, demeure finalement de supprimer physiquement l'espace au sein du HTML.
Un article du Wall Street Journal met en lumière la prochaine grosse évolution du moteur de recherche de Google, à savoir une fonction de recherche sémantique poussée capable de donner aux utilisateurs une réponse directe à leurs questions.
De nombreux documents sont imprimés pour un usage sur le long terme. Qu’en est-il des autres, très nombreux, dont la durée de vie reste très courte et nous fait ainsi gaspiller des montagnes de papier ? Une équipe d’ingénieurs de l’université de Cambridge a découvert le moyen d’effacer l’encre sur ces pages afin que nous puissions les réutiliser.
Paypal lance Paypal Here, une nouvelle solution de paiement mobile destinée aux petits commerçants tandis que Google concocte un nouveau moteur basé sur la recherche sémantique. Retour en détails sur ces deux informations. Paypal a annoncé hier le lancement d’une nouvelle solution de paiement mobile à destination des petits commerçants. Baptisé Paypal Here, le service se [...]
Le nouvel iPad est disponible depuis aujourd'hui en France. Alors qu'il domine très largement le marché des tablettes, ce "nouvel iPad" aura à coeur de suivre la trace de ses aînés. Présenté la semaine dernière lors d'une Keynote retransmise en direct sur Presse-Citron et marqué par l'absence de Steve Jobs, le nouvel iPad est disponible depuis
Build, Share, Download Fonts
Poken, start-up suisse spécialisée dans les technologies NFC dans le touch marketing, vient de boucler une levée de fonds de 2M $, auprès de Swisscom Ventures et de Credit Suisse. Fondée en 2007, la société, jusqu’à présent basée à Lausanne, s’est focalisée essentiellement sur un business BtoB. L’idée développée par l’entreprise : éliminer tous les prospectus, [...]
News décalées, vidéos musicales et concerts indés…C’est la chronique musique Frenchweb de la semaine ! Au sommaire : Foursquare se positionne sur la promotion des concerts, le modèle du 360° en chiffres et en question, la victoire de Mrs Good au tremplin web Ricard S.A Live Music, les nouveautés sur Twusic ainsi que les mouvements [...]
Cela ne vous empêchera pas de dormir mais sachez que Deezer est désormais accessible dans toute l’Europe.
Crédit : Simon Gee Giraudot (Creative Commons By-Sa)
Royal Cactus, spécialiste du jeu en ligne communautaire, vient d’officialiser une levée de 500 000 €, auprès d’XAnge Private Equity. Bouclée en septembre dernier, François Pacot, fondateur de la plateforme, n’avait toutefois pas encore communiqué sur cette levée de fonds. L’idée, en effet, était de procéder à une double annonce : « Cette augmentation de capital nous a notamment [...]
Spécialiste des enquêtes et d'études de marché, Toluna s'est imposé comme un acteur mondial, en misant sur les acquisitions et la R&D. Entretien avec le DG France de Toluna, Philippe Guilbert.
Découvrez une sélection de 15 rubans de qualité pour illustrer vos web design.
Le cabinet KPMG vient de publier sa cinquième enquête mondiale portée sur les tendances de consommation en matière de nouvelles technologies. Baptisée « Global Consumers & Convergence : the Converged Lifestyle », l’étude propose notamment un focus sur l’essor des smartphones et des tablettes et de leurs impacts dans de multiples domaines. L’enquête nous apprend ainsi que, dans le monde, [...]
En hausse de 15%, le marché de l'affiliation booste les acteurs comme Public-Idées, plateforme créée en 2005, qui voit son chiffre d'affaires grimper de 20%. Entretien avec son PDG, Sylvain Gross.
Après ZenithOptimedia, c’est au tour de Carat (Aegis Media) de publier ses prévisions sur l’évolution mondiale des investissements publicitaires. Pour 2012, le groupe table sur une hausse globale des dépenses de 6% à l’échelle mondiale, contre une croissance de 4,8% attendue par ZenithOptimedia. En revanche, les prévisions des deux entités se rejoignent sur un point : Internet. Le [...]
Les nouvelles spécifications HTML5 apportent un bon nombre de nouveautés. Aujourd'hui, nous allons voir plus en détail les menus contextuels en HTML5.
Le dispositif Accre adaptée à la rémunération effective des créateurs d'entreprise, c'est l'idée défendue par Juan Hernandez, co-fondateur de l'Accélérateur.
Aaah, centrer des éléments, une question récurrente tant les cas sont nombreux. CSS offre quelques possibilités natives, mais toute la difficulté de l'exercice est de les exploiter comme il faut pour obtenir le rendu souhaité. Je vais ainsi parcourir tous les cas solvables en pur CSS, et tant qu'à faire montrer comment les résoudre.
Finis les <center>?! Finis les align="center"?! Accrochez-vous, c'est parti?!