Si j’ai des balises vides comme celle-ci
Le pack d’agilité leur permet de ressembler
Y a-t-il quelque chose à faire pour annuler ce comportement?
Essayez ceci avant de sauvegarder:
if (HtmlNode.ElementsFlags.ContainsKey("td")) { HtmlNode.ElementsFlags["td"] = HtmlElementFlag.Empty | HtmlElementFlag.Closed; } else { HtmlNode.ElementsFlags.Add("td", HtmlElementFlag.Empty | HtmlElementFlag.Closed); }
Cela change le comportement de tous les éléments td
qui peuvent ne pas être ce que vous voulez. Je ne sais pas comment faire cela par nœud.
Définissez la propriété OptionWriteEmptyNodes
sur true sur votre document HtmlDocument
.
Bien que la réponse de @Corbin March ne fonctionne pas comme prévu, c’est la seule que j’ai trouvée qui se rapproche. Le problème est que HAP effectue toujours des corrections supplémentaires, ce qui en fait un problème.
Du code original:
En définissant les ElementFlags comme ci-dessus, la balise d’élément de fermeture n’est en effet pas créée, mais le “/” final est supprimé. Cela pourrait être un problème selon votre scénario, c’était pour moi. Le fragment d’origine devient: