Web Design | Best Practices Checklist
by
Alison Ostendorf
on
Some things are standard enough and have been so widely tested by the design community that they can simply be considered “good design” heuristics, and generally don’t need usability testing.
I’ve put these into a checklist. Please tend to these items. Don’t build any more sad websites.
The modern website checklist:
Quality control:
- The DOM tree in any code file is properly tabbed, for quick visual scanning of the tree structure (please use tabs, not spaces)
- Comments are used in the code to designate the purpose of a code snippet, the author of a particular component, the end of a section, or any other note-worthy pieces of knowledge
- Code syntax — Pass the code through a code checker to make sure all anchor tags are closed properly
- Input fields are labeled with the data input type that should be accepted into them, such that the appropriate keyboard pops up when on mobile
- No hover effects are required in order to properly use a site on a touch-screen device
- APIs or integrations work and are showing up properly — both function and design
- Navigation items function after being clicked several times in a row. (For reference, I once found an issue with JQuery Turbolinks that conflicted with Rails, allowing a navigation item to only be clicked once per site visit.)
- The entire page moves/interacts appropriately with the navigation as the navigation moves
- Fade-ins and fade-outs, hovers, delays, and any additional interactions work as desired on all screen sizes and device types
- Grammar and language are correctly used — This means that things are spell checked and syntax/grammar is relevant per each situation. (Example: “Your shipment will arrive in 1 days from now” is not relevant, nor is it correct grammar. Use conditionals in sentences that could vary. Bad grammar distracts users from the main point of the website.)
- The website’s SSL certificate shows up. Now, every site that wants to be found by Google’s search engine needs to have some sort of SSL certificate.
- Any domain forwards are occurring properly
Textual / Technical:
- The language tag is included in every html page (don’t default to whatever the browser can figure out). For example, ‘<html lang=“en”>’
- The page title is custom per each page
- The page title format: “{custom title} | {the brand name}”, for example, “This Medium Article Title | Medium”
- A JQuery CDN is included in each html page (assuming you’re using JQuery for help with animation/styling)
- The design firm and contact info is listed in stylesheet (the CSS)
- The main brand colors are written as a comment into the css stylesheet early on in the file, so that other designers/developers to can reference them quickly and accurately
- Conditional statements are used in the code to show only relevant information to the user, depending on their context. For example, if a user is signed in, they don’t also see a link to Sign Up for an account.
- The web hosting package is sufficient for the complexity of the site, the size of the files hosted, the way the site is coded, and the volume of traffic expected
UXUI Design:
- The brand logo in the main navigation links to the home page
- The brand logo in the main navigation is clearly visible from far away
- The logo in the footer also links to the home page
- All similarly functioning navigation items have the same visual design as each other and across all pages, except for the navigation item representing the page that is currently being viewed. This page should visually stand out as the “active” link
- All forms and input fields send the data where it needs to go
- After forms are submitted, the user receives a clear indication that the information was successfully sent. This can be a simple (but well styled) flash message, or it can be a redirect to a confirmation page.
- All modals/lightboxes work on all devices, and they display the correct info without requiring the user to scroll down at all. Modals are meant to be only short interruptions.
- There is a footer on every page. The business’ logo, contact info, hours, social media, newsletter sign up, and common page links are found in the footer or can be found easily by clicking an item in the footer.
- All columns in the footer expand and collapse well on any device size, and are left/center/right aligned and titled in a way that maintains the separation of the different types of information
- The background color of the site allows the brand to make a design statement, while also allowing all text and images to stand out
- If any text lies on top of an image, the text is white and the image below is dark enough to allow the text to stand out clearly
- Phone numbers are clickable on mobile AND desktop devices, and they open up the default way to call or text that phone number from that device
- Emails are clickable on mobile AND desktop devices, and they open up the default way to email that email address from that device
- Responsive design has been completed successfully for very wide screens, for tablets, for very small screen widths (mobile), for touch screens, for non-touch devices. This means: All sections and objects are in their intended display order, are aligned in visually pleasing and informative ways, and their interactivity is with each other and with the viewer is working.
- Social media icons are linked to external pages so that they open in additional windows, rather than internal pages. (they should contain a target=”blank” ) We don’t want the user leaving the main website out of convenience.
- Social media icons are sized, colored, and shaped in a way that is aligns with the rest of brand visuals
- Social media icons link to the correct EXTERNAL pages. Don’t allow social media icons to redirect internally unless you prefer your users to leave the original site in order to view that social media
- Buttons have no “visited” outline after they’ve been clicked
- Buttons have informative text that describes what action they accomplish. For example, rather than a simple “Submit”, choose “Sign Up”
- Buttons show a clear visual difference when they are being hovered over than when they are inactive
- The curser changes when hovering over a link, to make it clear to the user that there is a potential action at that location
- Any hover transitions are a bit gradual (rather than taking the default of 0.0 seconds)
- Print styling (in the stylesheet, “@media print …”) is… at least good enough. This is not where most websites show off their amazing design experiences, but if your users are likely to print or create a PDF of your website, you should make sure that what they print looks good and has the content they are trying to memorialize.
- As busier screens load, a preview of the visual structure of information temporarily displays, informing the user that the screen is in the process of loading a certain type of content, and giving them extra time to get emotionally ready for the content about to appear
Business:
- Each page has just one very visible, obvious, and convincing call to action; and it is the next most logical action that brings the user down the sales funnel
- Business contact info and hours of operation are current
- Copy /content is current, relevant, in the tone of the brand, and approved by the brand
- Client (if any) has approved the design
- The designers/developers/company have been paid, pre-launch of the site
Thanks for reading. I’ll update this every now and then as technology and design standards change, so stay tuned.
I hope this list is helpful for you and/or a website you care about.