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 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)
10save_path = os.path.join(output_dir, "change-text-color-inline-css.html")
11document_path = os.path.join(data_dir, "text-color.html")
12
13# Change the first paragraph text color
14with ah.HTMLDocument(document_path) as document:
15 paragraph = document.get_elements_by_tag_name("p")[0]
16
17 # Set the style attribute with color property
18 paragraph.set_attribute("style", "color: #8B0000;")
19
20 document.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 paragraph text color with internal CSS 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-text-color-internal-css.html")
10
11data_dir = "data"
12document_path = os.path.join(data_dir, "text-color.html")
13
14# Add an internal CSS rule for paragraph text
15with ah.HTMLDocument(document_path) as document:
16 style = document.create_element("style")
17 style.text_content = "p { color: #8B0000 }"
18
19 head = document.get_elements_by_tag_name("head")[0]
20 head.append_child(style)
21
22 document.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 HTML text color based on a value in Python
2
3import os
4import aspose.html as ah
5
6# Prepare the output path
7output_dir = "output"
8os.makedirs(output_dir, exist_ok=True)
9save_path = os.path.join(output_dir, "conditional-text-color.html")
10
11# Define the HTML content
12html_content = """
13<html>
14<body>
15<p>Score: 85</p>
16<p>Score: 42</p>
17<p>Score: 73</p>
18</body>
19</html>
20"""
21
22# Set score colors according to their values
23with ah.HTMLDocument(html_content, ".") as document:
24 paragraphs = document.get_elements_by_tag_name("p")
25
26 for paragraph in paragraphs:
27 text = paragraph.text_content
28 score = int(text.split(":")[1].strip())
29
30 color = "green" if score >= 70 else "red"
31 paragraph.set_attribute("style", f"color: {color};")
32
33 document.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.