public static void Main()
<p><div>more text</div></p>";
Console.WriteLine(RemoveWhiteSpace(html));
private static string RemoveWhiteSpace(string htmlString)
var doc = new HtmlDocument();
doc.LoadHtml(htmlString);
if (htmlString.Contains("<div>")) RemoveHTMLBr(doc, "div");
if (htmlString.Contains("<p>")) RemoveHTMLBr(doc, "p");
return doc.DocumentNode.OuterHtml;
private static void RemoveHTMLBr(HtmlDocument doc, string mainNode)
foreach (var node in doc.DocumentNode.SelectNodes("//" + mainNode))
if (node.InnerText.Trim().Length != 0) break;