Before you even begin designing your website, you should consider how you will use it to your advantage upon completion. Some owners make an event out of the launch of their website to create some buzz about their brand. Others line up their best customers to give testimonials on their new site via copy or video content so they, and these customers, have something to say and share on social media.


The legal issue for websites is whether website operators are operating “a place of public accommodation.” The statute lists 12 different types of public accommodations including somewhat of a catchall that includes “other sales or rental establishment.” The list, created when the law was passed in 1988, conceivably covers most commercial establishments, but does not expressly include websites.


...the full and equal enjoyment of the goods, services, facilities, or accommodations of any place of "public accommodation" by any person who owns, leases, or operates a place of public accommodation. Public accommodations include most places of lodging (such as inns and hotels), recreation, transportation, education, and dining, along with stores, care providers, and places of public displays.
The Federal Communications Commission (FCC) enforces regulations covering telecommunication services. Title IV of the ADA covers telephone and television access for people with hearing and speech disabilities. It requires telephone and Internet companies to provide a nationwide system of telecommunications relay services that allow people with hearing and speech disabilities to communicate over the telephone.
The World Wide Web Consortium (W3C) established the main international standards and accessibility for the World Wide Web. The WCAG is created by the W3C to provide a standard for web content accessibility that can be shared around the world. The WCAG is meant to accompany organizations as a sort of blueprint on how to make their websites ADA compliant.
As a web developer, Ryan's work is what makes the magic happen. He spends most of his time creating custom websites, which involves turning the designers' visual mockups into code. It's lucky that he's such a good problem solver, because many of Ryan's projects involve working with clients to create complex custom functions. He's also one of the few developers in the country with extensive experience developing for the HubSpot CMS.
Technology is changing, and many website designers are using creative and innovative ways to present web-based materials. These changes may involve	new and different access problems and solutions for people with disabilities. This Chapter discusses just a few of the most common ways in which websites can pose barriers to access for people with disabilities. By using the resources listed at the end of this Chapter, you can learn to identify and address other barriers.

"Candyce's company has done work for me for close to 5 years and has done a superb job with everything from business card design, to marketing materials like case studies, sales proposals, PDF brochures, as well as updating our Website. Her designs are always fresh and new so it is not the same recasting of old designs. Very reliable, also at times when we have to complete...
(function(){"use strict";function s(e){return"function"==typeof e||"object"==typeof e&&null!==e}function u(e){return"function"==typeof e}function l(e){X=e}function a(e){G=e}function c(){return function(){r.nextTick(d)}}function f(){var e=0,n=new ne(d),t=document.createTextNode("");return n.observe(t,{characterData:!0}),function(){t.data=e=++e%2}}function p(){var e=new MessageChannel;return e.port1.onmessage=d,function(){e.port2.postMessage(0)}}function h(){return function(){setTimeout(d,1)}}function d(){for(var e=0;et.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n}),String.prototype.startsWith||(String.prototype.startsWith=function(e,n){return n=n||0,this.substr(n,e.length)===e}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),String.prototype.includes||(String.prototype.includes=function(e,n){"use strict";return"number"!=typeof n&&(n=0),!(n+e.length>this.length)&&-1!==this.indexOf(e,n)})},"./shared/require-global.js":function(e,n,t){e.exports=t("./shared/require-shim.js")},"./shared/require-shim.js":function(e,n,t){var r=t("./shared/errors.js"),o=(this.window,!1),i=null,s=null,u=new Promise(function(e,n){i=e,s=n}),l=function(e){if(!l.hasModule(e)){var n=new Error('Cannot find module "'+e+'"');throw n.code="MODULE_NOT_FOUND",n}return t("./"+e+".js")};l.loadChunk=function(e){return u.then(function(){return"main"==e?t.e("main").then(function(e){t("./main.js")}.bind(null,t))["catch"](t.oe):"dev"==e?Promise.all([t.e("main"),t.e("dev")]).then(function(e){t("./shared/dev.js")}.bind(null,t))["catch"](t.oe):"internal"==e?Promise.all([t.e("main"),t.e("internal"),t.e("qtext2"),t.e("dev")]).then(function(e){t("./internal.js")}.bind(null,t))["catch"](t.oe):"ads_manager"==e?Promise.all([t.e("main"),t.e("ads_manager")]).then(function(e){t("./ads_manager/main.js")}.bind(null,t))["catch"](t.oe):"publisher_dashboard"==e?t.e("publisher_dashboard").then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"content_widgets"==e?Promise.all([t.e("main"),t.e("content_widgets")]).then(function(e){t("./content_widgets.iframe.js")}.bind(null,t))["catch"](t.oe):void 0})},l.whenReady=function(e,n){Promise.all(window.ansWebWebpackChunks.map(function(e){return l.loadChunk(e)})).then(function(){n()})},l.installPageProperties=function(e,n){window.Q.settings=e,window.Q.gating=n,o=!0,i()},l.assertPagePropertiesInstalled=function(){o||(s(),r.logJsError("installPageProperties","The install page properties promise was rejected in require-shim."))},l.prefetchAll=function(){t("./settings.js");Promise.all([t.e("main"),t.e("qtext2")]).then(function(){}.bind(null,t))["catch"](t.oe)},l.hasModule=function(e){return!!window.NODE_JS||t.m.hasOwnProperty("./"+e+".js")},l.execAll=function(){var e=Object.keys(t.m);try{for(var n=0;n
Because web designers tend to work as freelancers on a project basis, they must be excellent communicators, willing to manage their own work, and available on your schedule. Some critical skills, such as working collaboratively and responding enthusiastically to feedback, aren’t core to good web design, but make working with a web designer much easier. Finally, look for a web designer who has cross-functional knowledge, such as understanding marketing and conversion rate optimization in addition to web design.
Blind people, those with low vision, and people with other disabilities that affect their ability to read a computer display often use different technologies so they can access the information displayed on a webpage. Two commonly used technologies are screen readers and refreshable Braille displays. As discussed above, a screen reader is a computer program that speaks the text that appears on the computer display, beginning in the top-left corner. A refreshable Braille display is an electronic device that translates text into Braille characters that can be read by touch. These assistive technologies read text. They cannot translate images into speech or Braille, even if words appear in the images. For example, these technologies cannot interpret a photograph of a stop sign, even if the word “stop” appears in the image.
Another important consideration is that the ADA does not allow businesses to simply provide an alternative such as a phone number. Lastly, include accessibility issues as part of your website and mobile strategy. When new technologies are implemented or pages added, part of the process should include the implications for persons with disabilities. 

(function(){"use strict";function s(e){return"function"==typeof e||"object"==typeof e&&null!==e}function u(e){return"function"==typeof e}function l(e){X=e}function a(e){G=e}function c(){return function(){r.nextTick(d)}}function f(){var e=0,n=new ne(d),t=document.createTextNode("");return n.observe(t,{characterData:!0}),function(){t.data=e=++e%2}}function p(){var e=new MessageChannel;return e.port1.onmessage=d,function(){e.port2.postMessage(0)}}function h(){return function(){setTimeout(d,1)}}function d(){for(var e=0;et.length)&&(n=t.length),n-=e.length;var r=t.indexOf(e,n);return-1!==r&&r===n}),String.prototype.startsWith||(String.prototype.startsWith=function(e,n){return n=n||0,this.substr(n,e.length)===e}),String.prototype.trim||(String.prototype.trim=function(){return this.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}),String.prototype.includes||(String.prototype.includes=function(e,n){"use strict";return"number"!=typeof n&&(n=0),!(n+e.length>this.length)&&-1!==this.indexOf(e,n)})},"./shared/require-global.js":function(e,n,t){e.exports=t("./shared/require-shim.js")},"./shared/require-shim.js":function(e,n,t){var r=t("./shared/errors.js"),o=(this.window,!1),i=null,s=null,u=new Promise(function(e,n){i=e,s=n}),l=function(e){if(!l.hasModule(e)){var n=new Error('Cannot find module "'+e+'"');throw n.code="MODULE_NOT_FOUND",n}return t("./"+e+".js")};l.loadChunk=function(e){return u.then(function(){return"main"==e?t.e("main").then(function(e){t("./main.js")}.bind(null,t))["catch"](t.oe):"dev"==e?Promise.all([t.e("main"),t.e("dev")]).then(function(e){t("./shared/dev.js")}.bind(null,t))["catch"](t.oe):"internal"==e?Promise.all([t.e("main"),t.e("internal"),t.e("qtext2"),t.e("dev")]).then(function(e){t("./internal.js")}.bind(null,t))["catch"](t.oe):"ads_manager"==e?Promise.all([t.e("main"),t.e("ads_manager")]).then(function(e){t("./ads_manager/main.js")}.bind(null,t))["catch"](t.oe):"publisher_dashboard"==e?t.e("publisher_dashboard").then(function(e){undefined,undefined,undefined,undefined,undefined,undefined,undefined,undefined}.bind(null,t))["catch"](t.oe):"content_widgets"==e?Promise.all([t.e("main"),t.e("content_widgets")]).then(function(e){t("./content_widgets.iframe.js")}.bind(null,t))["catch"](t.oe):void 0})},l.whenReady=function(e,n){Promise.all(window.ansWebWebpackChunks.map(function(e){return l.loadChunk(e)})).then(function(){n()})},l.installPageProperties=function(e,n){window.Q.settings=e,window.Q.gating=n,o=!0,i()},l.assertPagePropertiesInstalled=function(){o||(s(),r.logJsError("installPageProperties","The install page properties promise was rejected in require-shim."))},l.prefetchAll=function(){t("./settings.js");Promise.all([t.e("main"),t.e("qtext2")]).then(function(){}.bind(null,t))["catch"](t.oe)},l.hasModule=function(e){return!!window.NODE_JS||t.m.hasOwnProperty("./"+e+".js")},l.execAll=function(){var e=Object.keys(t.m);try{for(var n=0;n
×