Forum Moderators: not2easy
You can use repeating images for a background. Open up paint (yes paint) and make a document of several pixels by several pixels. Zoom in 8x and edit each pixel. Use CSS to repeat the pattern as necessary.
CSS can be very useful if you're willing to make it happen on Gecko, KHTML, MSIE, and Opera based browsers in the very least. Menus don't always need to use graphic backdrops, it's absurd most of the time and even on broadband can create a noticeable and unprofessional delay. Most sites still don't have a bloody doctype let alone decent code. Get to know your HTML, XHTML, CSS, Javascript, and other technologies. Stop relying on programs like Dreamweaver that will use half a page of Javascript to create a rollover when if you NEED to make an MSIE rollover you can use a mouseover event to change the class as so...
<... class="p11" onmouseover="this.className='p11h'" onmouseout="this.className='p11'">
If it's your personal site resort to CSS :hover if you're sick of or not romanced by the challenges of MSIE to frustrate our minds by defying standards...
div.menu1 {}
div.menu1:hover {}
Spend your time browsing through examples of HTML and CSS tags and markup. There are lots of useful and interesting ways to display code while maintaining validity and accessibility.
You can add borders, change the style, width, and color. Use compatible but various background colors or simple several pixel by several pixel small images.
Rounded corners if you desire will for the moment require a little hacking. They are included in CSS3 but will likely not be supported until well in to the next decade for IE based on MS's insistence that customers don't have demands (because they don't know WHAT to demand).
Coding is a challenge and MSIE is the current challenge. It took over for the last great challenge, NS4. Get used to sophisticated web stats, download the browsers including older versions of MSIE (that you can download and run alongside at the same time along with 6.0 on XP) and test your pages out.
Any fool fresh out of school can make a beautiful web-page that takes all year to load. It takes someone with a balance of code and graphic abilities to make that page load quickly.
A good way to test out how long your page will load is to clear IE's cache (as Gecko does not save the files as they are originally named) and load JUST the page you're working on from the net. Now divide the total KB by 4.7 TOPS. That will be the QUICKEST time your page will load on dialup. Reduce the divisor to 3 or 2 (for kb a sec) and that will give you the time your page will load on a $10 a month ISP that will likely disconnect during the evening hours.
For those with the need to show off both sugar and spice though keep the bandwidth nice you can use two or more Stylesheet based on a person's bandwidth choice. For example my Stylesheet and themes are loaded based upon my visitor's bandwidth choice. Wherever they enter my site they must make a choice of dialup or broadband. Broadband will load about 80KB based Stylesheet (including related files loaded by the Stylesheet) and the dialup Stylesheet will load about 40KB total. This does not include the actual HTML content of the pages but I'm not running a business from my site and have made my Stylesheet very dynamic should I ever decide to drastically modify a new theme. Most Stylesheet I work on range from 6-12KB total to keep all styling and adjective like aspects out of the HTML.
Save your images that are smaller then 200x200 (typically interface images) as "Save for web" photoshop gifs. The size and type of method you choose is your preference though this is a good technique for saving those images to files typically measured in hundreds of bytes. Use transparency and low number of colors (even 2 colors at times or with diagonal or curvy lines a 2 colored transparent and say red bg for a menu could be reduced to 1-3KB that you could replicate for all your menus with very little noticeable load time even for dialup (assuming it loads as one of the first items on dialup that is).
Another good method is to attempts to have your interface items load on the visitor's first page they see without loading large items. If your html and other technology presentations (such as small interface flash files which are part (but NOT) (of) the entire, the user will load these items from their browsers cache and pages they follow can work on loading new content quicker when the server sends a 304 (content not modified since last visit, load from cache).
It's the web and there are a slew of technologies available for you to choose from. Matter of fact I find myself always using universally cross Os compatible languages/script languages all the time in all my work. Having at least a well balanced if not in-depth understanding of each will help you build a page with a more professional touch.
The best way to see how your page is doing however is to go over to a friend's house who uses a cheap and slow ISP. Hop on to the computer, clear the browser's cache, and load your site. If it doesn't load in a matter of 7-8 seconds you can bet that they and other people on dialup will either stop loading your page (the big bad X) or walk away and take care of life matters and return after a few minutes to look at your page. If the latter is the case then I hope the heavy image use is repetitive!
There are probably numerous more tips other people can give and a few things I haven't thought of but that's what I can think of for the moment. This won't apply to all sites of course and if it's based on multimedia aspects then a well built site will find a reasonable balance that allows a user to progress in to the site while moderating it's load from page to page. If a user feels inclined your content is worth the wait once they have progressed in your site enough they will typically wait a little longer if say you want to load an 800x600 screenshot and the content is say a video game. Remember to find balance! :-)