My development tips and tricks :
Foo Fighters - All My Life
(One by One)

Machine Head - Davidian
(Burn My Eyes)

Weezer - El Scorcho
(Pinkerton)

Cake - Rock 'n' Roll Lifestyle
(Motorcade of Generosity)

Deftones - Simple Man
(B-Sides & Rarities)

WP Cumulus Flash tag cloud by Roy Tanck and Luke Morton requires Flash Player 9 or better.
Un bouton permettant de modifier la taille du texte d’une page semble à première vue sans intérêt car il s’agit d’une fonctionnalité classique de tous les navigateurs
De plus, comment une personne ayant un handicap visuel, et qui pourrait donc trouver ce bouton utile, peut elle localiser facilement celui-ci ? Sans compter, que ces personnes naviguent tout le temps avec un affichage adapté à leur handicap et qu’il n’attendent pas que les sites proposent de tels gadgets mais que , par exemple, toutes les tailles de polices soient exprimées de façon relative, en « em ».
Voilà mon avis, mais toujours est-il que des clients peuvent (malgré nos recommandations) trouver cette fonction « intéressante » et demande à ce qu’elle soit intégré au site.
Deux solutions à ma connaissance :
Ces deux solutions utilisent Javascript et CSS et on peut envisager d’ajouter la « sauvegarde » du choix de la taille avec les Cookies.
J’ai choisi la deuxième solution qui me semble plus souple car aucune feuille de style supplémentaire ne sera créée.
Par contre si Javascript n’est pas activé, il ne se passe rien. SI les cookies sont désactivés on perd la taille choisie. Ces deux points ne me semble pas bloquants, ces deux boutons n’étant que des doublons des fonctionnalité du navigateur.
Si toutes vos unités sont fixes et que vous débutez avec les unités relatives en « em », je vous conseille cet aticle : Définir des tailles de police dynamiques cohérentes avec CSS.
Code javascript :
function fontSize(action) {
var nb = .1;
var conteneur = 'article';
if (action=='+') {
if (eval(document.getElementById(conteneur).style.fontSize.substring(0,document.getElementById(conteneur).style.fontSize.lastIndexOf('em')))<2) {
document.getElementById(conteneur).style.fontSize = eval(document.getElementById(conteneur).style.fontSize.substring(0,document.getElementById(conteneur).style.fontSize.lastIndexOf('em'))) + nb + 'em';
}
} else if (eval(document.getElementById(conteneur).style.fontSize.substring(0,document.getElementById(conteneur).style.fontSize.lastIndexOf('em')))>1) {
document.getElementById(conteneur).style.fontSize = eval(document.getElementById(conteneur).style.fontSize.substring(0,document.getElementById(conteneur).style.fontSize.lastIndexOf('em'))) - nb + 'em';
}
EcrireCookie("fontsize",eval(document.getElementById(conteneur).style.fontSize.substring(0,document.getElementById(conteneur).style.fontSize.lastIndexOf('em'))));
}
function EcrireCookie(nom, valeur) {
var argv=EcrireCookie.arguments;
var argc=EcrireCookie.arguments.length;
var expires=(argc > 2) ? argv[2] : null;
var path=(argc > 3) ? argv[3] : null;
var domain=(argc > 4) ? argv[4] : null;
var secure=(argc > 5) ? argv[5] : false;
document.cookie=nom+"="+escape(valeur)+
((expires==null) ? "" : ("; expires="+expires.toGMTString()))+
((path==null) ? "" : ("; path="+path))+
((domain==null) ? "" : ("; domain="+domain))+
((secure==true) ? "; secure" : "");
}
Il y a deux variables modifiables dans cette fonction :
- L’identifiant du conteneur : conteneur
c’est la taille de police de cet élément qui va être modifié, ces éléments enfants étant exprimé en « em », ils le seront aussi.
- le nombre nb de « em » à ajouter ou diminuer à chaque clic.
Code html :
<a title="Augmenter la taille du texte" onclick="fontSize('+');return false;" href="#">Abc +</a>
<a title="Diminuer la taille du texte" onclick="fontSize('-');return false;" href="#">abc -</a>
J’ai limité la taille maximum à 2em et la taille minimum à 1em.
Salut prof !
Juste un petit coucou..
tu ne penses donc qu’à ça !
Mais c’est sympa de nous donner tes trucs et astuces
J’espère que tu vas bien @ bientôt dans le 63 ?
lol