Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.
Changer dynamiquement la couleur du texte est une tâche courante dans l’automatisation web, les rapports et la génération de documents. Avec Aspose.HTML for Python via .NET, vous pouvez charger, modifier et sauvegarder des fichiers HTML en toute sécurité sans édition manuelle. Cette approche est particulièrement utile lorsque vous avez besoin de :
Changer la couleur du texte sur une page web est facile avec la propriété CSS color. Il existe quelques façons de définir cette valeur de propriété. Vous pouvez utiliser CSS en ligne, interne ou externe, et les valeurs de couleur HTML peuvent être spécifiées comme les noms de couleur standard anglais ou avec des valeurs HEX, RGB, RGBA, HSL et HSLA.
Cet article montre comment changer programmatiquement la couleur du texte avec Aspose.HTML for Python via .NET, en utilisant à la fois CSS en ligne et interne.
Dans cet exemple, nous définissons la couleur du texte directement dans l’attribut style d’un élément HTML. Ceci est connu sous le nom de CSS en ligne. Cette méthode est simple et idéale pour appliquer rapidement un style à des éléments individuels.
Par exemple, dans l’extrait de code suivant, vous pouvez voir comment spécifier la propriété CSS color pour l’élément HTML <p> dans un fichier HTML. Suivez quelques étapes :
<p> pour définir un attribut style. Utilisez la méthode
get_elements_by_tag_name(name) qui renvoie le premier élément avec un nom d’étiquette donné dans l’ordre du document.style avec la propriété color. 1# Change HTML text color using Python
2
3import os
4import aspose.html as ah
5
6# Setup directories and define paths
7data_dir = "data"
8output_dir = "output"
9os.makedirs(output_dir, exist_ok=True)
10save_path = os.path.join(output_dir, "change-text-color-inline-css.html")
11document_path = os.path.join(data_dir, "file.html")
12
13# Create an instance of an HTML document
14with ah.HTMLDocument(document_path) as doc:
15 # Find the first paragraph element
16 paragraph = doc.get_elements_by_tag_name("p")[0]
17
18 # Set the style attribute with color property
19 paragraph.set_attribute("style", "color: #8B0000;")
20
21 # Save the modified HTML document to a file
22 doc.save(save_path)CSS en ligne fonctionne mieux lorsque vous souhaitez changer le style d’éléments spécifiques individuellement. En conséquence, le texte du premier paragraphe dans le fichier HTML sera recoloré en #8B0000 couleur Rouge Foncé (pour voir la figure (a), veuillez faire défiler la page vers le bas).
CSS interne est idéal lorsque vous souhaitez appliquer des styles uniformes à plusieurs éléments, comme tous les paragraphes ou en-têtes. Dans cet exemple, nous ajouterons un bloc <style> à la section <head> d’un document HTML. Cette approche est plus propre et idéale lorsque vous avez besoin d’appliquer un style à plusieurs éléments de manière cohérente.
<style> et assigner la valeur de couleur de texte pour tous les éléments <p>. Utilisez la méthode
create_element(local_name) qui crée un élément du type spécifié.get_elements_by_tag_name() pour trouver l’élément <head> du document et ajouter l’élément <style> à celui-ci. 1# Change color for all paragraphs in HTML using Python
2
3import os
4import aspose.html as ah
5
6# Prepare an output path for saving the document
7output_dir = "output"
8os.makedirs(output_dir, exist_ok=True)
9save_path = os.path.join(output_dir, "change-text-color-internal-css.html")
10
11# Prepare a path to the source HTML file
12data_dir = "data"
13document_path = os.path.join(data_dir, "file.html")
14
15# Create an instance of an HTML document
16with ah.HTMLDocument(document_path) as doc:
17 # Create a <style> element and set CSS for the all <p> elements
18 style = doc.create_element("style")
19 style.text_content = "p { color: #8B0000 }"
20
21 # Find the <head> element and append the <style> element
22 head = doc.get_elements_by_tag_name("head")[0]
23 head.append_child(style)
24
25 # Save the modified HTML document to a file
26 doc.save(save_path)Pour changer la couleur du texte, vous pouvez utiliser les exemples Python considérés dans cet article avec des éléments HTML <p>, <h1>, ou <h2>, etc. Gardez à l’esprit que l’utilisation de l’attribut style (CSS en ligne) remplace tout style spécifié dans la balise HTML <style> ou dans une feuille de style externe.
La figure illustre les résultats du changement de couleur du texte selon l’utilisation de l’exemple CSS en ligne (a) et de l’exemple CSS interne (b) :

Dans certains cas, vous pouvez avoir besoin de changer dynamiquement la couleur du texte basé sur des données, par exemple, pour mettre en évidence des scores, des alertes ou des avertissements. En utilisant Aspose.HTML for Python via .NET, vous pouvez facilement accéder et changer des éléments HTML basés sur leur contenu ou attributs. L’exemple suivant démontre comment définir la couleur du texte basé sur une valeur numérique :
1# Change text color based on data in HTML using Python
2
3import os
4import aspose.html as ah
5
6output_dir = "output"
7os.makedirs(output_dir, exist_ok=True)
8save_path = os.path.join(output_dir, "conditional-text-color.html")
9
10html_content = """
11<html>
12<body>
13<p>Score: 85</p>
14<p>Score: 42</p>
15<p>Score: 73</p>
16</body>
17</html>
18"""
19
20# Initialize the HTML document
21with ah.HTMLDocument(html_content, ".") as doc:
22 paragraphs = doc.get_elements_by_tag_name("p")
23
24 for p in paragraphs:
25 text = p.text_content
26 score = int(text.split(":")[1].strip())
27
28 # Apply color conditionally
29 color = "green" if score >= 70 else "red"
30 p.set_attribute("style", f"color: {color};")
31
32 # Save the modified document
33 doc.save(save_path)Le code lit les valeurs de texte d’un paragraphe. Il extrait le score numérique et le compare à une valeur de référence. Chaque élément <p> obtient un style appliqué dynamiquement basé sur cette condition. Cette technique est utile lorsque vous créez des rapports ou des visualisations de données en HTML, rendant la sortie plus lisible et visuellement compréhensible.

1. Quelle est la différence entre CSS en ligne et interne ?
CSS en ligne est appliqué directement à un seul élément en utilisant l’attribut style, tandis que CSS interne est appliqué à plusieurs éléments via le bloc <style> à l’intérieur du <head>.
2. Pourquoi la couleur du texte ne change-t-elle pas dans la sortie ?
Assurez-vous que le sélecteur d’élément est spécifié correctement (par exemple, “p” pour paragraphe). Aussi, veuillez vérifier que la structure de votre document HTML inclut l’élément cible et que les styles avec une priorité plus élevée ne le remplacent pas.
3. Puis-je utiliser des valeurs RGB ou HSL au lieu de HEX ?
Oui. La propriété color accepte tous les formats de couleur CSS : noms de couleur, HEX (#8B0000), RGB (rgb(139,0,0)), RGBA, HSL et HSLA.
Voir Aussi
Vous pouvez télécharger les exemples complets et les fichiers de données depuis GitHub.
Analyzing your prompt, please hold on...
An error occurred while retrieving the results. Please refresh the page and try again.