• 0

WD-FAQ


Question

post-32224-1133451733.gif

post-32224-1133451710.gif

As a follow up to my guide on computer graphics: “Vector vs. Raster”, I’ve written this brief guide to modern web design techniques. Such is the nature of the Internet that this information quickly becomes obsolete as new technologies supersede old ones, but I hope it will answer a few of the more commonly asked questions here on Neowin.

This guide won’t teach you how to be a good designer. It won’t even teach you how to code. Its aim is to give a rundown of the current trends in web design, the “web zeitgeist”, as it were. Hopefully it can set new web designers off on the right track to avoid problems further down the line.

Both this guide and my previous guide are in a state of constant revision and I welcome any and all feedback. My aim is that this topic can be referenced to and new users guided here for answers to quick questions often seen the Web and Graphic Designers Corner.

post-32224-1133451703.gif

Web design as a long and somewhat convoluted history. Back in the late mid-to-late 90s when the Internet was starting to become widely available to more than government agencies and geeky teenagers, the “browser wars” started. This effectively was a battle between Microsoft Internet Explorer and Netscape Navigator. Wikipedia can give you more information on this, but the basic outcome was that both Microsoft and Netscape started inventing HTML elements to stay ahead of the game. At that point, following W3C recommendations wasn’t seen as a priority and it was more important to gain users by adding multimedia elements specific to each browser. Examples include the dreaded <blink> tag in Netscape, and the countless multimedia additions and even whole scripting languages (VBScript) introduced by Microsoft.

Thankfully, times are a’changin’. Albeit slowly. Today, while there are still numerous incompatibilities, browser developers are striving to make their browsers more standards compliant to present pages in a uniform manner. With the growing popularity of Mozilla Firefox and other alternatives, Microsoft has been forced to rethink its strategy with Internet Explorer and, as such, has big plans for Internet Explorer 7. It is hoped that this new version will fix many of the IE-specific bugs that plague developers and require so-called “hacks” in CSS to fix.

post-32224-1133451718.gif

As I type this in November 2005, there is a movement among developers, headed by recommendations from the W3C, to separate content from presentation. But what does that actually mean?

Consider a bedroom in a house: let’s say it has a chair, a table, a bed and a window. That’s the content of the bedroom. But what type of chair is it? What are the dimensions of the table? Is the bed a double or a single? Or maybe a king-size? Are there curtains? This is the presentation of the content of the bedroom.

Current web trends encourage the separation of the content layer from the presentation through a technology known as CSS. CSS stands for Cascading Style Sheets, and is a method of defining rules for elements on a web page. Things like the colour of the element, the amount of padding around it, the font used for text. It is suggested that an HTML page should be near-enough bare of any mark-up (code) that gives presentation information, which should be in a separate CSS file.

Why bother? A valid question: it sounds like just an added hassle, and an extra file to upload. But the benefits are huge: if done properly, you can change your entire site appearance by editing one file. Because all pages in your website link to this presentation CSS file, you can edit that and immediately the entire look and feel of your site changes.

post-32224-1133451691.gif

It’s beyond the scope of this article to go too far into the rules of CSS, but there is one area I feel needs clarification as it is often misunderstood. When you want to style an element you define your presentation rules the CSS file and give it a style name: either a class or an ID (prefixed by “.” or “#” respectively). But which should you use? The answer lies in the element: if it’s something that’s repeated a number of times on your page, for example a particular text style or image style, give it a class. If it occurs just once, for example a DIV containing a header graphic, give it an ID. Classes are for repeated styles, IDs are for something that only occurs once per page.

post-32224-1133451696.gif

HTML, XHTML, Transitional, Strict… these terms are thrown around quite openly without much thought for their meaning. Some developers would say “Oh, code it in XHTML because it’s better”… but why? XHTML is an evolution to standard HTML which is in its fourth revision, and is designed to supersede it. It’s meant to unify developers and force them to produce cleaner code that simply makes more sense. It disallows tags that aren’t closed, rejects element attributes that aren’t part of the standard, and generally is stricter.

XHTML Transitional is a slightly more relaxed version of XHTML Strict – it allows things like the target attribute of anchor tags, which have an XHTML equivalent that isn’t widely supported by current browsers. Aside from all this, “Transitional” makes sense – as a developer community we’re in transition from HTML 4 to XHTML 1, so it makes sense that we use a transitional doctype for now to maintain optimum compatibility as well as reaping the benefits of XHTML.

post-32224-1133451745.gif

So what’s different about XHTML? There are three main differences you would come across daily with XHTML:

  • Self-closing tags – in the past, you could put the break tag (<br>) and horizontal rule tag (<hr>) on their own in HTML markup. In the quest for clean code, however, this equates to a tag that isn’t closed, so XHTML has changed this to a self-closing tag for semantic purposes, written “<br />” and “<hr />” respectively.
  • Strictness on custom attributes values – values that are IE-specific and not part of the XHTML specification such as “absmiddle” for the align property of an element will be ignored. Use CSS for this.
  • Semanticity – make sure your code makes sense! HTML defines elements for a reason. Use paragraph tags (<p>) for paragraphs, lists (<ul>, <ol>) wherever you have a list, and header tags (<h1>, <h3>) for headers. Remember, you can style any element in your CSS file if you don’t like the default way it’s presented by the browser, but use tags for their intended purpose. Also of note is that you can style lists to display horizontally rather than vertically – a navigation menu could be an unordered list displayed horizontally. After all, it is a list of links.

post-32224-1133451738.gif

In order to help developers produce clean code, a tool was developed by the W3C called the “Markup Validation Service”, or just “Validator”, which scans through the code of a web page and checks it against the latest HTML specification. I find this very helpful in designing pages as it can highlight problems that may be invisible to you on your browser but could plague users of other browsers. You can find this service here:

http://validator.w3.org/

post-32224-1133451724.gif

Tables are not evil. Web designers frequently complain about the use of tables on a web page without fully explaining their reasons, and as a result confuse less experienced designers. There is nothing wrong with using tables in your HTML code – but only if you are displaying tabular data. The W3C discourages you from using tables for layout purposes, which became the standard for web designers for many years due to their cross-browser compatibility. Now, CSS is there to define your layouts. Keep tables for data, and CSS for layout. This reiterates my point about using HTML tags for their intended purposes.

post-32224-1133451684.gif

We're getting a bit technical by delving into the world of AJAX but I think it's worth mentioning. AJAX is by no means a new technology: it's been around for a number of years but it's only now that it is becoming popular. This is mainly thanks to the efforts of GOogle who have brought it into the mainstream with its implementation in Gmail, Google Maps etc. AJAX stands for "Asynchronous JavaScript language and XML" and is a technology for creating interactive web applications. AJAX seeks to bridge the gap between web applications and desktop applications by reducing the constant refreshing of pages that occurs when working through an online application. By sending and receiving data to and from the server in the background of the web page and using Javascript to update the page dynamically, a much richer experience is possible for the user who can see the results of their inputs on-the-fly.

Check out Wikipedia's entry on AJAX for further reading, and Google Suggest for an excellent example of AJAX at work.

Edited by Joel
Link to comment
https://www.neowin.net/forum/topic/398525-wd-faq/
Share on other sites

17 answers to this question

Recommended Posts

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • EU Commission explains why Siri AI isn't launching in the EU, and Apple is to blame by Hamid Ganji Image via Apple This week at Apple’s 2026 developers conference, the iPhone maker unveiled the upgraded Siri after more than a year of delays. The new Siri is now called Siri AI, and it's powered by Google Gemini models. While Siri AI is preparing to roll out to Apple users worldwide, the company’s EU customers might need to wait much longer before getting their hands on the new assistant. Shortly after announcing iOS 27, Apple said in a blog post that Siri AI is not coming to the EU anytime soon due to hurdles posed by the Digital Markets Act (DMA) and other regulatory requirements. To comply with the DMA in the EU, Apple apparently needs to open Siri AI to rival assistants on iOS 27 and iPadOS 27. Apple has refused to do so, which has resulted in Siri AI being delayed for its EU users. The company argues that such a move would put users’ privacy at risk. In a statement to Neowin, a European Commission spokesperson provided more details about why Siri AI will not be rolled out to Apple customers in the region. The statement first noted that the DMA does not prohibit Apple from launching its services in the EU and that the company is simply required to comply with the law. The European Commission spokesperson added that, since Apple is considered a gatekeeper under the DMA, it is “obliged to give third parties access to equivalent features as they give to its own products. Because the DMA is precisely about giving users the choice to use the product they find best suits their needs.” Moreover, the spokesperson said the Commission has been in contact with Apple, though the company “did not develop proposals for DMA compliant interoperability solutions.” The statement also clarified that companies designated as gatekeepers cannot leverage their status and products, such as operating systems, to favor their own AI services. The first public beta of iOS 27 will roll out next month, while the stable version is expected to launch this fall following the release of the iPhone 18 series. It remains unclear when Apple will be able to resolve its DMA-related compliance issues with the European Commission and bring Siri AI to its European customers.
    • i wish i could uninstall Chrome from Anrdoid...  
    • XMedia Recode 3.6.3.1 by Razvan Serea XMedia Recode is a free video and audio converter. XMedia Recode supports nearly all audio and video codecs. With XMedia Recode you can easily convert nearly all film and music files in the format you want. Convert for countless devices, select the predefined profile (iPhone, iPad, iPod Touch, Android-Tablets, Sony PSP, Amazon Kindle, Smartphones Blackberry, Wii und DS, Cowon, Android, HTC, Xbox360, Samsung, LG). XMedia Recode converts: 3GP in AVI, 3GP in FLV, AC3 in MP3, AC3 in WAV, ASF in 3GP, ASF in FLV, ASF in MP4, AVI in FLV, AVI in 3GP, FLAC in MP3, FLAC in WMA, FLV in 3GP, FLV in Mp3, DVD in 3GP, DVD in AC3, DVD in AVI, DVD in MP3, DVD in MP4, DVD in MOV, DVD in SVCD, DVD in VCD, DVD in WMV, OGG in MP3, OGG in WMA, MPEG in AVI, MP2 in MP3, MP4 in FLV, MP4 in AVI, M4P in MP3, MOV in 3GP, MOV in AVI, MOV in FLV, WMA in MP3, WMV in FLV, WAV in MP3. Main functions of XMedia Recode: Extracts audio tracks from DVD, Blu-ray and video files Framework also freely selectable color (Padding) Drag-n-drop of video files directly on the encoder Selection display format (1: 1, 3:2, 4:3, 5:4, 5:6, 11:9,16: 9, 16:10, 2.21: 1) Zoom shot (none, type character box, media, Pan Scan, to screen) ''Direct Stream'' copies the audio stream or video stream into the target format 2-Pass-Encoding Volume correction Can change framerate, bit rate, resolution Can extract audio stream of most video formats Produce DVD copies for mobile phones, various mobile devices Edit Video: Color correction Video cut Cropping Denoise Delogo Deblocking De-interlacing Flip Image Start Time End Time Resolution Rotate Image Sepia Sharpness Padding Video fade in / fade out XMedia Recode 3.6.3.1 changelog: Update of ffmpeg Updated AOM AV1 Codec (3.14.1) Fixed minor bugs Download: XMedia Recode 64-bit | Portable ~20.0 MB (Freeware) Download: XMedia Recode 32-bit | Portable View: XMedia Recode Website | Screenshot Get alerted to all of our Software updates on Twitter at @NeowinSoftware
    • This has been on the roadmap for years, nothing really new here. This is one of the few areas where Microsoft is making Windows better. Universal print is a very good things and so far works as expected. The last step is ending the option for 3rd parties to add traditional custom drivers. It is somewhat of a hurdle, but it is for a long-term good. The downside is that printer manufactures are likely going to use this as an excuse to force users onto new printers. Considering this roadmap has been public for years, then printers sold during that time should be covered...but I'm sure they will have a different opinion.
    • Where are you seeing that? It seems hard to believe considering nothing in the Apple ecosystem gets that level of access, and the same for Android unless you put some kind of custom rooted image on the phone. It just seems like asking for something that hasn't ever been given to anyone, is a stupid strategy; it's going to be an automatic 'no'.
  • Recent Achievements

    • One Month Later
      pinnclepd earned a badge
      One Month Later
    • First Post
      X-No-file earned a badge
      First Post
    • One Month Later
      johnjacobb40 earned a badge
      One Month Later
    • One Year In
      Primer1st earned a badge
      One Year In
    • Experienced
      JayZJay went up a rank
      Experienced
  • Popular Contributors

    1. 1
      +primortal
      506
    2. 2
      PsYcHoKiLLa
      213
    3. 3
      +Edouard
      145
    4. 4
      Steven P.
      86
    5. 5
      ATLien_0
      83
  • Tell a friend

    Love Neowin? Tell a friend!