Attribute 'nowrap' is considered outdated. A newer construct is recommended. What is it?

HtmlCssVisual Studio-2010Compiler ErrorsNowrap

Html Problem Overview


I'm getting an error when compiling this within an ASPX page using Visual Studio 2010:

    <td valign="top" nowrap width="237">

The error message is

    "Attribute 'nowrap' is considered outdated. A newer construct is recommended."    

What construct is the error message referring to? And does it behave exactly the same as 'nowrap'?

Html Solutions


Solution 1 - Html

You can use it like this, I hope you wont get outdated message now.

  <td valign="top" style="white-space:nowrap" width="237">

As pointed by @ThiefMaster it is recommended to put width and valign to CSS (note: CSS calls it vertical-align).

1)

<td style="white-space:nowrap; width:237px; vertical-align:top;">

2) We can make a CSS class like this, it is more elegant way

In style section

.td-some-name
{
  white-space:nowrap;
  width:237px;
  vertical-align:top;
}

In HTML section

<td class="td-some-name">

Solution 2 - Html

There are several ways to try to prevent line breaks, and the phrase “a newer construct” might refer to more than one way—that’s actually the most reasonable interpretation. They probably mostly think of the CSS declaration white-space:nowrap and possibly the no-break space character. The different ways are not equivalent, far from that, both in theory and especially in practice, though in some given case, different ways might produce the same result.

There is probably nothing real to be gained by switching from the HTML attribute to the somewhat clumsier CSS way, and you would surely lose when style sheets are disabled. But even the nowrap attribute does no work in all situations. In general, what works most widely is the nobr markup, which has never made its way to any specifications but is alive and kicking: <td><nobr>...</nobr></td>.

Solution 3 - Html

If HTML and use bootstrap they have a helper class.

<span class="text-nowrap">1-866-566-7233</span>

Solution 4 - Html

Although there's CSS defines a text-wrap property, it's not supported by any major browser, but maybe vastly supported white-space property solves your problem.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
Questionuser1023602View Question on Stackoverflow
Solution 1 - HtmlAdilView Answer on Stackoverflow
Solution 2 - HtmlJukka K. KorpelaView Answer on Stackoverflow
Solution 3 - HtmlMahibView Answer on Stackoverflow
Solution 4 - HtmlGerardo LimaView Answer on Stackoverflow