Comment changer la couleur d'arrière-plan en HTML en utilisant Python

Disons que vous créez un rapport HTML et que vous souhaitez mettre en évidence des sections importantes avec une couleur d’arrière-plan différente. Aspose.HTML for Python via .NET vous permet de changer programmatiquement les styles en ligne et internes sans modifier le code source.

Cet article démontre trois façons pratiques de changer la couleur d’arrière-plan d’un document HTML en utilisant la bibliothèque Aspose.HTML for Python via .NET, et fournit des extraits de code Python prêts pour une utilisation pratique. Ici, vous apprendrez comment :

Changer la couleur d’arrière-plan d’un HTML est facile avec la propriété CSS background-color. Vous pouvez utiliser CSS en ligne, interne ou externe, et les valeurs de couleur HTML peuvent être spécifiées comme noms de couleur standard ou dans les formats HEX, RGB, RGBA, HSL et HSLA. Dans les exemples ci-dessous, nous utiliserons les codes de couleur HEX et RGB, car ils sont parmi les plus couramment utilisés.

Changer la Couleur d’Arrière-plan d’un Élément Spécifique

Étapes pour changer la couleur d’arrière-plan pour un élément HTML en utilisant Python :

  1. Charger ou créer un document HTML.
  2. Déterminer quel élément (<p>, <body>, etc.) vous souhaitez changer la couleur d’arrière-plan et trouver cet élément pour définir un attribut de style pour lui. Utilisez la méthode get_elements_by_tag_name(name) de la classe Element qui renvoie l’élément HTML avec un nom d’étiquette donné.
  3. Utilisez la méthode set_attribute(“style”, “…”) pour appliquer CSS en ligne.
  4. Sauvegarder le HTML modifié dans un fichier.

L’exemple Python suivant montre le changement de couleur d’arrière-plan pour le premier élément <p> :

 1# Change paragraph background color in HTML in Python
 2
 3import os
 4import aspose.html as ah
 5
 6# Prepare input and output paths
 7output_dir = "output"
 8os.makedirs(output_dir, exist_ok=True)
 9save_path = os.path.join(output_dir, "change-background-color-p-inline-css.html")
10
11data_dir = "data"
12document_path = os.path.join(data_dir, "file.html")
13
14# Change the first paragraph background color
15with ah.HTMLDocument(document_path) as document:
16    paragraph = document.get_elements_by_tag_name("p")[0]
17
18    # Set the style attribute with background-color property
19    paragraph.set_attribute("style", "background-color: #fff0f5;")
20
21    document.save(save_path)

En conséquence, le premier paragraphe aura un fond lavande (#fff0f5). Pour voir la figure (a), veuillez faire défiler la page vers le bas. Vous pouvez définir ou changer la couleur d’arrière-plan pour divers éléments HTML tels que <p>, <h1>…<h6>, <div>, <table>, etc.

Changer la Couleur d’Arrière-plan de Toute la Page Web

Vous pouvez également changer la couleur d’arrière-plan de toute la page HTML en mettant à jour le style CSS en ligne de l’élément <body> ou en utilisant CSS interne.

Changer la Couleur d’Arrière-plan en Utilisant CSS En Ligne

Si vous souhaitez changer la couleur de tout le document HTML, vous devez utiliser la propriété background-color de l’attribut style dans la balise d’ouverture de la section <body>.

Code HTML

1<body style="background-color: lavenderblush">

Exemple Python

 1# Change HTML background color with inline CSS in Python
 2
 3import os
 4import aspose.html as ah
 5
 6# Prepare input and output paths
 7data_dir = "data"
 8output_dir = "output"
 9os.makedirs(output_dir, exist_ok=True)
10
11document_path = os.path.join(data_dir, "file.html")
12save_path = os.path.join(output_dir, "change-background-color-inline-css.html")
13
14# Change the body background color
15with ah.HTMLDocument(document_path) as document:
16    document.body.style.background_color = "lavenderblush"
17    document.save(save_path)

Résultat : L’arrière-plan de toute la page devient lavande (#fff0f5). La figure montre deux fragments des fichiers HTML rendus : (a) avec une couleur d’arrière-plan pour le premier élément de paragraphe ; (b) avec une couleur d’arrière-plan changée pour tout le document :

Texte “Fichiers HTML rendus avec couleur d’arrière-plan changée pour le premier paragraphe (a) et pour tout le document (b)”

Changer la Couleur d’Arrière-plan en Utilisant CSS Interne

Le même résultat de coloration d’arrière-plan pour tout le document HTML (comme dans la figure b) peut être réalisé en utilisant CSS interne, comme le montre l’exemple de code HTML suivant :

1<head>
2<style>
3	body {
4	background-color: rgb(255 240 245);
5	}
6</style>
7</head>

Note : Gardez à l’esprit que l’utilisation d’un attribut style remplace tout style défini dans la balise HTML <style> ou dans la feuille de style externe.

L’exemple Python suivant démontre comment réaliser CSS interne pour changer la couleur d’arrière-plan pour un fichier HTML complet. Suivez quelques étapes :

  1. Charger un fichier HTML existant.
  2. Trouver l’élément <body> et supprimer la propriété background-color de l’attribut style. Note : Si la couleur d’arrière-plan est définie en utilisant l’attribut style en ligne, cette étape est nécessaire car l’utilisation de l’attribut style remplace à la fois CSS interne et externe.
  3. Créer un élément <style> et assigner la valeur background-color pour l’élément <body>.
  4. Trouver l’élément <head> dans votre document et ajouter l’élément <style> dans celui-ci.
  5. Sauvegarder le document HTML modifié.
 1# Change HTML background color with internal CSS in Python
 2
 3import os
 4import aspose.html as ah
 5
 6# Prepare input and output paths
 7data_dir = "data"
 8output_dir = "output"
 9os.makedirs(output_dir, exist_ok=True)
10
11document_path = os.path.join(data_dir, "file.html")
12save_path = os.path.join(output_dir, "change-background-color-internal-css.html")
13
14# Change the body background color using internal CSS
15with ah.HTMLDocument(document_path) as document:
16    # Remove only the inline background-color property
17    document.body.style.remove_property("background-color")
18
19    # Create an internal CSS rule
20    style = document.create_element("style")
21    style.text_content = """
22        body {
23            background-color: rgb(255 240 245);
24        }
25    """
26
27    head = document.get_elements_by_tag_name("head")[0]
28    head.append_child(style)
29
30    document.save(save_path)

Changer la Couleur d’Arrière-plan pour les Cellules de Tableau

L’exemple Python suivant démontre comment changer la couleur d’arrière-plan des cellules de tableau dans un document HTML. Le code charge un fichier HTML existant, trouve tous les éléments <td>, et applique des couleurs d’arrière-plan alternées à chaque cellule en utilisant CSS en ligne. Cette approche peut aider à mettre en évidence les rangées de données, améliorer la lisibilité du tableau ou séparer visuellement le contenu avant de convertir le document dans un autre format, tel que PDF ou une image.

 1# Change table cell background colors in HTML in Python
 2
 3import os
 4import aspose.html as ah
 5
 6# Prepare input and output paths
 7data_dir = "data"
 8output_dir = "output"
 9os.makedirs(output_dir, exist_ok=True)
10
11document_path = os.path.join(data_dir, "table.html")
12save_path = os.path.join(output_dir, "change-table-cell-background.html")
13
14# Change alternating table cell background colors
15with ah.HTMLDocument(document_path) as document:
16    # Select all <td> elements
17    cells = document.get_elements_by_tag_name("td")
18
19    # Loop through each table cell and set alternating background colors
20    for i in range(cells.length):
21        cell = cells[i]
22        color = "#f3d2dd" if i % 2 == 0 else "#ffffff"
23        cell.set_attribute("style", f"background-color: {color};")
24
25    document.save(save_path)

Texte “Tableau HTML avec cellules paires mises en évidence”

Questions Fréquemment Posées

1. Est-il possible de changer l’arrière-plan d’un seul élément HTML spécifique ?
Oui, vous pouvez sélectionner les éléments souhaités en utilisant query_selector() ou get_elements_by_tag_name().

2. Cela fonctionne-t-il avec de gros fichiers HTML ?
Oui, Aspose.HTML for Python via .NET charge et modifie efficacement même des documents HTML complexes.

3. Puis-je utiliser cette méthode pour changer d’autres styles (police, bordure, etc.) ?
Bien sûr. Vous pouvez changer n’importe quelle propriété CSS programmatiquement de la même manière.

4. Puis-je rendre le HTML modifié en PDF ou en image ?
Oui. Aspose.HTML vous permet de convertir votre HTML modifié en PDF, XPS, DOCX et plus de formats en utilisant la classe Converter. Des exemples de conversion HTML en Python peuvent être trouvés dans le chapitre Conversion entre formats.

Voir Aussi

  • Comment changer la couleur du texte en HTML ? – Dans cet article, vous apprendrez comment changer la couleur du texte dans les paragraphes, les en-têtes, etc., en utilisant Aspose.HTML for Python via .NET.
  • Comment Charger et Convertir du HTML en Toute Sécurité en Python – Sandboxing – Dans cet article, vous apprendrez comment charger et convertir du HTML non fiable en toute sécurité en Python en utilisant Aspose.HTML for Python via .NET. Inclut des exemples de sandbox pour bloquer les scripts et les images externes.
  • Comment changer la couleur de la bordure ? – Cet article vous donne des informations et des exemples Python sur la façon d’ajouter ou de changer la couleur de la bordure pour votre texte dans un fichier HTML. Exemples étape par étape, conseils CSS et solutions aux problèmes de style courants.
  • Codes de Couleur HTML – Dans cet article, vous trouverez des informations sur les codes de couleur HTML pour votre site web – noms de couleur HTML, codes de couleur HEX, valeurs RGB, RGBA, HSL et HSLA.
  • Modifier le Document HTML en Python – Dans cet article, vous explorerez plus d’exemples de modification HTML – comment créer, peupler, ajouter des éléments HTML et modifier CSS en ligne et interne.

Texte “Applications Web HTML”