28172 sujets

CSS et mise en forme, CSS3

Bonjour,

J'essaie d'utiliser LESS.

J'ai fait un test qui ne marche pas, corrigez moi svp
Dans un dossier, deux fichiers : un index.html et un style.less
Je les ouvre avec Sublime Text.

Voici le code de mon index:

<!DOCTYPE html>
<html>
<head>
<title>Test LESS</title>
<link rel="stylesheet/less" type="text/css" href="style.less" media="all"/>
<script src="http://lesscss.googlecode.com/files/less-1.3.0.min.js" type="text/javascript"></script>
</head>

<body>
	<section>
		<div class="test">text here</div>
	</section>
</body>
</html>

Et mon style.less :

@blue: #17B6FF;
@lime: #B6FF17;
 
.test { background: @blue; color: @lime; }


J'ai enregistre et ouvert le tout dans Chrome direct.
J'ai teste avec un less.js en local, meme resultat.

Je suppose que le probleme est la compilation.
Alors... comment on fait ? Je voudrais quelque chose de rapide (genre cliquer sur un bouton qui compile direct, appelant un batch, ou alors un raccourci dans Sublime Text...)

Merci =)

Edit : j'ai ouvert la commande Windows, installe LESS comme dit sur le site officiel en faisant la commande npm install -g less puis j'ai compile manuellement dans la commande avec lessc et ca m'a fait un fichier css correspondant a mon LESS. Ok. Mais quelques question maintenant :

1) C'est quoi cette inclusion de less.js dans le head finalement ?

2) Y a-t-il un moyen de compiler plus facilement ? (batch, commande Sublime Text, etc)

3) Finalement on inclut le .less ou le .css dans le head ?

Merci =)

New edit: ok j'ai cree un fichier batch avec la commande lessc dedans, maintenant, le less est compile directement en css lorsque j'ouvre ce batch. Possibilite d'aller encore plus vite ? (inclure un bouton dans Sublime Text ou raccourci clavier par exemple)

Ca peut faire un peu ridicule, mais je pose mon probleme, je continue d'essayer de chercher et de trouver, de partager mes pistes, et puis je pense que ca pourra toujours servir a quelqu'un dans le futur...
Modifié par LightBen (07 Mar 2013 - 12:10)
Up =)

Et aussi : comment ca marche LESS sous bootstrap ? entre l'inclusion de fichiers, la compilation, etc je suis completement perdu.

Si j'ai bien compris :

1) Utilisation normale de LESS : un fichier less, on compile, on a le css qu'on inclut dans le site
2) Utilisation normale de Bootstrap : on inclut les CSS et JS de Bootstrap qu'on inclut dans le site
3) Utilisation de less ET Bootstrap... ? Quels fichiers inclue-t-on, comment, ou, etc...

Merci =)

Edit: ou alors simplement... on inclut bootstrap et par la suite notre propre LESS et on agit normalement... ?
Modifié par LightBen (07 Mar 2013 - 14:27)
Administrateur
Bonjour,

je n'ai jamais utilisé less.js, j'ai toujours utilisé lessphp pour compiler le fichier LESS en CSS.
Il te faut un serveur PHP et une extension de page HTML qui soit exécutée par PHP sur ton serveur (peut-être que .html ne l'est pas, il te faut alors .php). Tu trouveras sur le site de lessphp la doc pour compiler le .less en .css en début de fichier (un include avec 2 paramètres). Ensuite ton code HTML peut faire un lien vers le fichier CSS généré une microseconde auparavant.

Attention aux include de fichiers LESS/CSS dans le fichier LESS que tu compiles : lessphp ne recompile un fichier LESS que s'il a été modifié "récemment" (si le fichier LESS est plus récent que le fichier CSS je suppose). Mais il n'ira pas regarder si les fichiers inclus ont eux été modifiés. Tu peux t'acharner à modifier un sous-fichier ; si tu n'as pas modifié le fichier principal il ne compilera rien, il faut donc rajouter un espace dans ton fichier principal pour lui forcer la main Smiley ohwell Et évidemment il y a au moins une fois où tu oublieras... Smiley sweatdrop Bref, un seul fichier ou alors force la main à lessphp en faisant un "touch" du fichier LESS principal : il sera toujours plus récent et la recompilation sera systématique. On a les hacks qu'on peut Smiley ravi

Si tu utilises WordPress, voir du côté de WP-LESS, extension d'@OncleTom qui embarque lessphp.
Il faut utiliser les hooks pour ajouter la feuille de style à tes pages, pas directement l'élément link (j'ai pas trouvé la doc très claire à ce sujet, c'est le moins que je puisse dire). L'extension surveille en effet le hook truc_enqueue_style (pas *_script mais bien *_style).
Merci pour ta reponse.

Ne serait-il pas plus simple d'inclure simplement le fichier CSS apres compilation ?
Et qu'en est-il au niveau ressources, temps de chargement ? Il est mieux d'inclure la css compilee ou le less et de compiler ?

Il y a un bon tuto ici http://www.youtube.com/watch?v=ZQwBfqkoVro il fait son LESS et il a un batch qui compile en live avec l'argument watch. Seul probleme, j'ai cree le meme fichier batch, il s'ouvre, s'execute... mais se ferme, comme si le watch ne marchait pas. J'aime bien la solution. Vous sauriez quelle est la cause de ce probleme ? Et que pensez vous des differentes solutions (inclure le less et compiler, ou inclure un js, ou lessphp, etc etc)

Merci =)
Bonjour LightBen.

Juste une question : pourquoi souhaites-tu compiler LESS coté client ?

Le LESS peut se compiler à trois moment : lors de la conception, coté serveur ou coté client.

S'il s'agit d'un site de petite envergure, il est plus simple de compiler le LESS au moment de la conception. Pour ça tu peux utiliser un petit programme comme WinLess ou bien créer un Workflow automatisé en NodeJs (avec Gulp ou Grunt).

La compilation coté client me semble une moins bonne idée... Du moins j'en perçois moins les avantages.
Modifié par erwan21a (21 Oct 2016 - 17:21)
Je ne souhaite pas forcement compiler cote client je cherchais plus a decouvrir les differentes methodes et quelle est celle la mieux adaptee.

Apres avoir fait un tour, il me semble que la compilation manuelle est la meilleure methode. Je vais essayer ton Winless...

Je viens d'essayer WinLess, c'est super. Simple, rapide, marche en fond instantanement...

De quoi se sert WinLess pour compiler, il a les fichiers integres ou on a besoin d'integrer un fchier dans le dossier, ou d'installer Ruby, etc ? Ou sur un autre PC j'aurai tout simplement a installer Winless et serai apte a bosser sur ma Less directement ?