We help IT Professionals succeed at work.

We've partnered with Certified Experts, Carl Webster and Richard Faulkner, to bring you two Citrix podcasts. Learn about 2020 trends and get answers to your biggest Citrix questions!Listen Now


how to make the website resolution independent using asp.net?

s_monani asked
Medium Priority
Last Modified: 2012-06-27
hi experts,
    I m making my project in asp.net.  I want to create the project resolution independent. I had tried it with tables but it became complicated when the project form had more controls. Is there any other way to do it so. Plz help me.

Watch Question

just refer the html source code of www.yahoo.com.

use relative widths in your html code :  
<table border=0 cellpadding=0 cellspacing=0 width="100%">

Asp.Net 2.0 has a facility called themes. This allows your site to has several 'Sets' of images (amongst other things) and a style sheet associated with each set. This set is called a theme and you can programatically set the theme on a user by user basis at runtime.

Basically what you need to do is design a set images and a style sheet for each resiolurion and store these as a theme in the App_themes folder. Then in the session on start event detect the users screen resolution (from the user agent in browser capabilities) and set the theme as appropriate (typically using a case statement).

For page layout you could either
 1) use a master page for each screen resolution (my favorite as it's easy and flexible)
 2) use a single master base based on percentages (can ork but difficult to develop and not very flexible - you might want to have a completly different layout for some browsers)
 3) use css positioning based on divs and stored in the style sheet (this the most PC and by far trhe bset but you'd need to be pretty good at CSS to pull it off)

If you want to get really advanced you could also put all your sites text into 'skin' files (these are part of the theme) and have these dynamically put on the page at run time. This works for really small browsers where you might want a less verbose version of you site to be displayed. It is also a technique that can be used for creatig a multi-lingual site.

The real beauty of this is that it's straight out of the box in asp.net 2.0


thanx for u r reply. But can u plz tell me what is master page?

Master pages are a new featutre of ASP.Net 2.0. Basically you can define a template (as master page) and define within it placeholders for content. Then you write your content pages that have just these content 'islands' and nothing else (except a reference to the master page). At run time the content islands are merged with the master page and the result is a normal asp.net page. The advantage is that the template is seperate and therefore when you change it you onluy have to change the one page. Another advantage is that you can programatically choose which master page to use so you can change the page layout on a page by page basis at runtime.

This is a very basic explanation but you can find dozens of detailled examples on the web.



Can u send me some of the example links so that i can understand in a better way



    It was nice links as it had the very clear & easily understandable contents. But the problem is i m using asp.net 1.1 version. & Master pages are not supported by this version. So any  other option is there?


You really should upgrade if you want to use these features. You caould implement these your self using a base page and inherit all your pages from it. Howvere, that is the old 1.1 way of doing things, it's difficult ot maintain and has poor design time support. Master pages and themes are two of the main reasins that MS wrote ASP.Net 2.0.

You can upgrade for free is cost is a limitation. The framework is free from and so is Visual Web Developer Express.


Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts

I beleive that I am owed the poijnts for this one. I have worked hard to explain the solution setp by step. The author agrees that this is the correct answer he's just not using ASP.Net 2.0.

Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.


Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.