Afficher à peu près n'importe quoi (SVG et HTML) dans la console du navigateur des utilisateurs de votre site.
J'ignorais que wget pouvait être utilisé pour télécharger récursivement toutes les pages d'un site. J'avais besoin de faire ça simplement pour extraire la documentation d'un vieux site dont je ne suis pas sûr qu'il soit toujours en ligne dans quelques années.
wget -r -p https://urldusite.com
Et le tour est joué ! Bon j'ai juste eu un souci avec l'extension .html
qui manquait pour la plupart des fichiers mais sinon ça fait le job.
Source: https://www.makeuseof.com/tag/how-do-i-download-an-entire-website-for-offline-reading/
Une astuce pour mettre en surbrillance la ligne et la colonne auxquelles appartient la cellule d'un tableau HTML, uniquement avec CSS.
Comment bloquer le démarchage téléphonique avec l'app Android : Yet Another Call Blocker.
L'idée est d'ajouter en black list les numéros que les démarcheurs doivent légalement utiliser :
+33162*
+33163*
+33270*
+33271*
+33377*
+33378*
+33424*
+33425*
+33568*
+33569*
+33948*
+33949*
Dispo ici également : https://www.service-public.fr/particuliers/actualites/A15938
Si vous avez des soucis d'erreur 0x80248014
quand vous essayez d'installer une distribution Linux avec WSL, dans un PowerShell en admin, essayez:
wsl --update --web-download
wsl --install -d Ubuntu-22.04 --web-download
Chez moi ça a marché.
Dans RegEdit aller dans cette section
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace
Et chercher la clé qui correspond à l'icône que vous voulez supprimer. Il suffit ensuite de supprimer cette clé.
Je ne connaissais pas la fonction contains
sur un Node HTML, qui permet de savoir si un élément en contient un autre. Idéal pour se passer des libraires type vue-clickaway.
Plus d'infos : https://developer.mozilla.org/en-US/docs/Web/API/Node/contains
Remplaçez .com
par .dev
dans l'URL d'un repo Github et vous avez une version web de VS Code qui vous permet d'éditer directement le repo.
Pour supprimer une icône impossible à supprimer sur le bureau Windows (à cause d'une config d'entreprise par exemple), il suffit d'aller dans le registre à cet endroit :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace
Et de supprimer les clé dont la description correspond à l'icône.
Intéressant cette info sur les numéros de téléphone qu'on peut voir dans les films :)
Via https://sebsauvage.net/links/?d2W4WA
Je ne connaissais pas la notion de Proxy en JavaScript mais c'est très intéressant et très utile. Ça peut permettre de faire l'équivalent des computed properties de Vue.js en JS natif par exemple.
L'utilisation de $attrs
est importante pour transmettre l'ensemble des attributs à un élément HTML qui ne serait pas à la racine de votre composant.
Quelques astuces CSS avancées.
CSS tips and tricks you will not see in most of tutorials.
Via https://sebsauvage.net/links/?vpxZLA
Astuce intéressante quand vous n'avez pas de favicon sous la main !
De très bons conseils pour intégrer du texte par dessus une image et s'assurer qu'il reste bien lisible.
Learn how to handle text over images in CSS by taking accessibility in mind
Quelques patterns méconnus avec Vue.js.
Afficher un bloc sur toute la largeur de votre site alors qu'il est contenu dans un bloc qui a une largeur limitée.
Astuce, utiliser les unités relatives au viewport :
.full-bleed {
width: 100vw;
margin-left: calc(50% - 50vw);
}
Tweaks Firefox.
Quelques petites astuces pour Firefox, en passant par le about:config.
Quelques astuces pour VLC.
Sous le coude.
Quelque idées pour facilement organiser vos classes CSS.
J'utilise notamment la première, la notation .is-open
pour les classes d'état, je trouve ça très clair et très pratique, surtout quand vous utilisez SASS.
Sous le coude.
Une technique intéressante qui consiste à utiliser un composant sans rendu (renderless), invisible donc, pour effectuer les appels AJAX. Ça permet de conserver la logique de la gestion du chargement et des erreurs centralisée et de simplement utiliser les variables exposées par le composant pour connaître le statut de la requête.
Je pense que ça ne s'applique pas à tout (uniquement aux requêtes GET par exemple) mais ça peut servir !
Une méthode pour se souvenir de tout (ou presque), facilement.
Un truc que j'avais aussi envisagé sans jamais le mettre en pratique c'était d'écrire dans une liste, à chaque trou de mémoire, le truc que j'ai oublié. Et ensuite, il faudrait lire toute la liste au moins une fois par jour. Aucune idée si ça marche mais je pense que ça peut aider pour les trucs qu'on oublie tout le temps.
Une introduction au plugin Emmet qui permet d'écrire du code HTML rapidement à l'aide d'expressions qui utilisent une syntaxe proche du CSS.
Un bon aperçu de l'utilisation du phénomène de propagation des évènements JavaScript pour simplifier votre code.
Les choses à ne pas faire avec PostgreSQL.
Il suffit de rajouter #31#
devant le numéro que vous voulez appeler.
Pas mal de petites astuces pour JavaScript.
Un moyen d'accomplir un layout à la Masonry avec uniquement du CSS (principalement Flexbox et :nth-child()
). C'est très bien pensé malgré les quelques contraintes.
Le plus gros souci pour moi c'est que si un élément est beaucoup plus haut que les autres, les blocs ne s'adapteront pas pour autant et l'ordre de lecture s'en trouvera impacté. Mais pour une grande part des cas, c'est suffisant.
Bon à savoir, vous ne pouvez pas utiliser clip-path
et box-shadow
sur le même élément. Si vous le faite, l'ombre n'apparaîtra pas.
Solution : utiliser un élément parent pour l'ombre ou alors un pseudo-élément (::before
par exemple) correctement positionné.
Accéder aux properties référencées via <context:property-placeholder>
depuis un composant Java.
/** Example of accessing a property from Java code. */
public class PropertyAccessExample implements Callable {
protected final Logger logger = LoggerFactory.getLogger(getClass());
@Value("${a}")
String myProperty;
@Override
public Object onCall(MuleEventContext eventContext) throws Exception {
logger.info("From Java a={}",myProperty);
return null;
}
}
Sous le coude.
Il ne faut pas grand chose pour rendre un site de base un peu joli.
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
line-height: 1.6;
color: #222;
max-width: 40rem;
padding: 2rem;
margin: auto;
background: #fafafa;
}
img {
max-width: 100%;
}
a {
color: #2ECC40;
}
h1, h2, strong {
color: #111;
}
Une astuce pour faire sortir un contenu de son parent sans changer son positionnement.
.full-bleed {
width: 100vw;
margin-left: 50%;
transform: translateX(-50%);
}
Une petite astuce pour utiliser $
et $$
comme alias pour document.querySelector
et document.querySelectorAll
.
const $ = document.querySelector.bind(document);
const $$ = document.querySelectorAll.bind(document);
// Change the background color of a class.
$('.class').style.background="#BADA55";
// Change the inner HTML of an ID.
$('#id').innerHTML="<span>Cool beans!</span>";
// Select all images on the webpage.
$$('img')
// Print the image addresses for all the images on a webpage.
$$('img').forEach(img => console.log(img.src))
Quelques astuces pour Git.
Quelques astuces sur l'utilisation de Windows.
Un aspect très important de Vue.js. Lorsque vous modifiez le modèle, vous vous attendez à ce que le DOM soit mis à jour immédiatement. Mais ce n'est pas ce qui se passe.
En réalité, Vue.js ajoute cet "ordre" de modification du DOM à une file d'attente puis gère tous les ordres d'un coup à intervalle régulier (l'intervalle est bien sûr très court pour éviter une latence visuelle). Mais ça permet d'éviter de mettre à jour le DOM plusieurs fois lorsque de nombreuses modifications du modèle interviennent successivement.
La conséquence, c'est que si vous accédez au DOM juste après avoir mis à jour votre modèle, il ne sera pas à jour. La solution est donc d'utiliser la fonction $nextTick
qui prend un paramètre un callback qui sera exécuté juste après la prochaine mise à jour du DOM :
this.$nextTick(() => {
// Ici, votre DOM est à jour.
document.querySelector('...')
})
Quelques conseils (en anglais) avant de prendre la parole en public.
Télécharger des vidéos Youtube avec VLC uniquement.
Des petites astuces pour Firefox.
Pas mal de bons conseils pour améliorer l'expérience utilisateurs sur vos formulaires.