Reputation: 705
ASP.NET offers two ways to specify paths for style sheets:
<link href="/common/black_theme/css/style.css" rel="stylesheet"> (this is working)
<link href="~/common/black_theme/css/style.css" rel="stylesheet"> (this is not working)
As per my knowledge, ~
represents the root directory of the application.
"common" is the folder below the website root (named testsite.demo
) in IIS.
Physical path: D:\Physicalpath\WarpFirstSite\testsite.demo
"common" folder: D:\Physicalpath\WarpFirstSite\testsite.demo\common
Upvotes: 55
Views: 50409
Reputation: 4431
If you add runat="server"
in your link tag then it would works perfectly....
like this....
<link href="~/common/black_theme/css/style.css" rel="stylesheet" runat="server">
(this is also working)
Upvotes: 8
Reputation: 12567
The second won't work because its not a recognised path by anything except asp.net code on the server side. And since your link tag is regular html and not a server control it never gets processed.
Upvotes: 12
Reputation: 499022
/
- Site root~/
- Root directory of the applicationThe difference is that if you site is:
http://example.com
And you have an application myapp
on:
http://example.com/mydir/myapp
/
will return the root of the site (http://example.com
),
~/
will return the root of the application (http://example.com/mydir/
).
Upvotes: 103