Comment dompter la hauteur de ligne en CSS - Grafikart

Comprendre les polices de caractère, le line-height et pourquoi ça fait chier en CSS...

solutions :

  1. text-box-trim 👍 résout le pb - 👎 pas supporté
  2. réduire les marges 👍 fonctionne - 👎 pas propre et très empirique
  3. marges négatives 👍 résout aussi le pb sans être sale - 👎 nécessite l'utilisation d'une app de calcul



Smooth Multi-Page Experiences with Just a Few Lines of CSS - HTMHell

Des transitions entre les pages en une ligne ?!

@view-transition {navigation: auto;}

Pas mal mais pas sur firefox pour le moment... https://caniuse.com/view-transitions

Un fallback que j'avais utilisé, jouer sur onload et l'opacité du body: https://snippetvamp.warriordudimanche.net/index.php?snippet=5EEB0F5F-C4F9-432E-97EE-558E4BA8E4B8

C'est loin d'être parfait mais bon...

/* Dans le Head */
<style type="text/css">body{opacity: 0;transition: opacity 1s}</style>

/* balise body */
<body onload="document.body.style.opacity=1" >

Via https://links.kalvn.net/shaare/65veMA

Astuce: Smarter than 'Ctrl+F': Linking Directly to Web Page Content - Le Hollandais Volant

En ajoutant #:~:text= à la fin d'une URL puis le texte qui apparaît quelque part sur la page, ce dernier sera surligné lorsque vous accèderez au lien, et la position de défilement placera ce texte au milieu.

Une sorte de version boostée aux hormones des classiques ancres qui ciblent les éléments avec un attribut HTML id.

Voici la syntaxe :

https://example.com/page.html#:~:text=[prefix-,]textStart[,textEnd][,-suffix]

RIDITLETEUR - PHP - Notes perso sur xpath

xpath est une façon d'extraire des données d'un document xml plus logique que le parsing par une regex.

Malgré tout l'amûûûr que   j'ai pour les regex

En gros, on retrouve un contenu grâce au chemin dans le DOM qui y conduit.

📘 Ressources

FindFeed : trouver les flux RSS et ATOM du site en un clic

Petite mise à jour pour mon script findfeed qui sert à trouver le flux RSS d'un site s'il existe...

Je le reprends de temps à autres quand je tombe sur un site qui échappe aux regex de recherche

Il y a un petit bookmarklet: un clic dessus quand on est sur un site et hop, on récup l'url du flux...

Dans cette version, j'ai également remis à jour la récup pour une chaîne youtube.

Si vous souhaitez améliorer la détection, il suffit d'ajouter ou modifier le tableau $regexes au début du script (ajouter des règles ou les modifier.)

Capture du 2024-11-05 14-16-29.png

Note au passage

Certains sites peuvent bloquer findfeed parce qu'il ne fait pas une requête «normale» comme celle d'un visiteur lambada C'est le cas d'OVH par exemple, qui bloque l'accès à maximevende.org alors que ce dernier a bien un flux RSS dans son header quand on y accède normalement.

En ajoutant un USER_AGENT à ma fonction CURL , ça semble avoir résolu le problème

RSS Fusion - Votre gestionnaire de flux RSS - RSS-Fusion

Pub pour l'appli de mon pote Erase RSS-fusion

Fusionner, filtrer, manipuler et gérer ses flux RSS en toute simplicité

RSS Fusion est un service en ligne conçu pour simplifier votre veille d'informations. En combinant plusieurs flux RSS en un seul, vous pouvez facilement suivre l'actualité qui vous intéresse.

Fonctionnalités Principales:

  • Fusion de flux : Ajoutez tous vos flux RSS préférés en quelques clics.
  • Filtres personnalisés : Affinez votre veille avec des mots-clés.
  • Import OPML : Importez vos flux RSS d'autres applications supportant ce format
  • Interface intuitive : Profitez d'une navigation fluide et agréable.

J'ai testé, c'est très simple, fonctionnel et joli: on peut ainsi créer facilement des flux RSS compilant le contenu de plusieurs autres flux. Par exemple, vous pouvez créer un flux «dev» regroupant tous les flux que vous suivez dans cette catégorie.

CSS Nuggets | One-Minute CSS Tutorials

Quelques astuces et bouts de codes CSS pour des effets sympas

GitHub - public-apis/public-apis: A collective list of free APIs

Une longue liste... je m'en note quelques-unes...

Géolocalisation

Données

a copier

RIDITLETEUR-12 Modern CSS One-Line Upgrades | Modern CSS Solutions

aspect-ratio

.aspect-ratio-hd {
  aspect-ratio: 16/9;
}
.aspect-ratio-square {
  aspect-ratio: 1;
}

object-fit

.image {
  object-fit: cover;
  aspect-ratio: 1;

/ Optional: constrain image size / max-block-size: 250px; }

margin-inline

/* Before */
margin-left: auto;
margin-right: auto;

/ After / margin-inline: auto;

text-underline-offset

+ text-decoration-color & text-decoration-thickness

Pour styler le soulignement.

accent-color

Pour styler les checkboxes etc.

Via https://links.kalvn.net/shaare/271jWw

Developer Tools secrets that shouldn’t be secrets | Christian Heilmann [MAJ]

Donc, pour résumer:

  • pour avoir le nom des variables avec leur valeur, utiliser { }: console.log({var})
  • console.warn(), console.error() et console.info() pour différencier l'aspect du message.
  • console.assert(condition,retour) pour éviter un if (condition){console.log(retour)
  • console.trace() pour remonter la pile d'appels
  • console.time('etiquette') et console.timeEnd('etiquette') pour mesurer un temps d'exécution entre deux points
  • console.group('nom'), console.groupCollapsed('nom') et console.groupEnd('nom') pour regrouper des console log()
  • console.table(array) pour présenter les données sous forme de tableau
  • console.dir(array) pour présenter hiérarchiquement un tableau
  • $(selecteur) est équivalent à document.querySelector(selecteur)
  • $$(selecteur) est équivalent à document.querySelectorAll(selecteur)

Liste complétée avec https://dev.to/alishgiri/say-no-to-consolelog-556n

Via https://lehollandaisvolant.net/?mode=links

Plugin pluxml: Canary, on en est peut-être déjà là...

Bon, vu les tournures que prennent les choses et la shitstorm qui nous attend, voici un petit plugin pour ajouter facilement un canari de censure à votre pluXML.

Pour rappel, le canari de censure est une image que l'on laisse tant qu'on n'a pas subi de pression éditoriale ou de menaces... Si c'est le cas, on retire l'image et tout le monde comprend le message sans que l'auteur n'ait besoin de courir un risque supplémentaire en publiant un billet d'explication.

Donc: canary
image récupérée par fetchit

Ce plugin ajoute donc une icône de canari (merci nounproject ) sur le site sans qu'il soit nécessaire d'éditer quoi que ce soit ou de s'y connaître en programmation. On active le plugin, on le configure et voilà.

La configuration permet de :

  • choisir la taille et le positionnement de l'icône,
  • choisir le texte de la balise title,
  • afficher ou ne pas afficher le canari.
capture.png

Dans les options de positionnement, on a les quatre coins, l'endroit où le hook est appelé ou le footer (dans ce cas pas besoin d'ajouter le hook dans le code.)

A propos du hook, on peut placer l'image dans les templates avec


 eval($plxShow->callHook('censorshipCanary'));

c'est tout.

Je ne sais pas si ça va intéresser quelqu'un ou si ça va être utile... mais bon, c'est là: https://repo.warriordudimanche.net/ZIPFILES/canary.zip

ASTUCE Html & JS : détecter quand on sélectionne un élément d'une datalist

En bossant sur l'appli que j'utilise pour mes cours, j'ai voulu ajouter un accès rapide à un document en tapant le début du nom de dossier dans un input alimenté par une datalist.

Bien entendu, je veux éviter de devoir passer du clavier à la souris plusieurs fois : tape un bout du nom, clique pour sélectionner, appuie sur entrée pour valider...

Donc, il faudrait que la sélection et l'ouverture du document se fasse:

  • quand je tape un bout de nom et que j'appuie sur entrée (il ira chercher le premier de la liste)
  • quand je tape le début, que j'utilise les flèches pour aller chercher celui que je veux et que j'appuie sur entrée,
  • quand je tape le début et que je clique sur le nom du document qui m'intéresse.

Et là, c'est le drame

En effet, autant on peut capturer un évènement sur un input, autant ce n'est pas possible sur les option ou le datalist

Donc, il faut gruger et agissant sur les events de l'input.

Je mets ici ma solution actuelle (c'est le code que j'utilise avec mon framework js perso parce que j'ai la flemme de changer ):

<input type="text" placeholder="accès rapide à un document" list="docs_list" id="input_docs_list">
<datalist id="docs_list">
    \\ici les option qui vont bien
</datalist>

<script type="text/javascript">
    on('keydown','#input_docs_list',function(e){ // ça, c'est mon VanillaJS
        if(e.keyCode==13||!e.key){ 
            // si on a appuyé sur entrée ou que l'évènement n'est pas déclenché par une touche (donc, c'est la souris)
            window.location.replace("?"+e.target.value);
        }
    });

    on('input','#input_docs_list',function(e){
        // celui-ci est pour firefox
        if(e.inputType=='insertReplacementText'){
            window.location.replace("?"+e.data);
        }
    })
</script>

J'ai testé sous Firefox, Chromium et Edge...

Fil RSS des articles
Caching time 0.007468 s