Many browsers do not handle this character. It is preferable to use the name of the object ( ­ ) instead of the ISO object ( ­ ).
But this object is pretty poorly handled by most browsers.
​ is just a space character wide.
The easiest way: (but the hyphen is always visible ...)
<p>longlonglong-​longlonglong</p>
And you can even try this (but I don't think you see your hyphen ...):
<p>longlonglong­​longlonglong</p>
But I donβt understand why you are inserting plain text right after the <html> node, this should not make the browser task easier, right?
Otherwise, in which browser (s) do you check your code? Because it works fine on the latest versions of Chrome and Firefox:
<p>longlonglong­longlonglong</p>
In any case, you might be interested in the <wbr> tag , but in this article on soft hyphen ...
source share