IT |
ITmedia 総合記事一覧 |
[ITmedia Mobile] 「povoの契約数は?」「LINEMOの990円には追随する?」――KDDI決算説明会一問一答(2021年7月編) |
https://www.itmedia.co.jp/mobile/articles/2107/30/news177.html
|
itmediamobile |
2021-07-30 21:45:00 |
IT |
ITmedia 総合記事一覧 |
[ITmedia News] ラズパイ内蔵のキーボード「Raspberry Pi 400」の日本版が販売開始 スターターキットはすでに売り切れ |
https://www.itmedia.co.jp/news/articles/2107/30/news176.html
|
itmedia |
2021-07-30 21:07:00 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
【Python演算処理】微分の概念を高校数学段階からグレードアップ? |
https://qiita.com/ochimusha01/items/bf5e5bcd824f0a920132
|
指数対数関数の微分微積分演算に対応しない形で以下の観測結果集合を構成する。 |
2021-07-30 21:56:35 |
python |
Pythonタグが付けられた新着投稿 - Qiita |
⚡⚡PythonとHoraを使用して、非常に高速な顔認識システムを作成します⚡⚡ |
https://qiita.com/salamer/items/0fb7bb75a226dd74ff3b
|
今日、私たちはPythonとhoraを使用して顔認識アプリケーションを作成していますdependencyをダウンロードしますpipinstallUflasknumpyfacerecognitionPillowhorapy既存の顔datasetを埋め込む必要がありますここで、デモの顔データベースはdatasetであり、facerecognitionを使用して埋め込み、その最下層は微調整されたmodelです。 |
2021-07-30 21:44:53 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
python、kivyでのレイアウトを変えたい |
https://teratail.com/questions/352041?rss=all
|
そして、kivyで書いたレイアウトの内容を、スマホで使いやすいように常に下に表示したいのです。 |
2021-07-30 21:56:43 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
javascriptで音楽が再生されない |
https://teratail.com/questions/352040?rss=all
|
javascriptで音楽が再生されない前提・実現したいことブラウザ内で音声を再生したいのですが、なぜか音楽が再生を押して分以上待っても再生されません。 |
2021-07-30 21:56:26 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
jQueryのscrollifyで一部普通にスクロールする設定 |
https://teratail.com/questions/352039?rss=all
|
scrollifyを指定している前後の部分を普通のスクロールにしたいのですが、上手くいかず、理由がわかりません。 |
2021-07-30 21:56:05 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
pandasのデータフレームでのデータ型の変換(空白を含むデータフレームにおいて) |
https://teratail.com/questions/352038?rss=all
|
|
2021-07-30 21:46:19 |
Program |
[全てのタグ]の新着質問一覧|teratail(テラテイル) |
mysqli に関するトランザクションをお教えください。 |
https://teratail.com/questions/352037?rss=all
|
mysqliに関するトランザクションをお教えください。 |
2021-07-30 21:42:08 |
Ruby |
Rubyタグが付けられた新着投稿 - Qiita |
[エラー]こんなミスは嫌だ |
https://qiita.com/mkato1013/items/060827278dd701008c3a
|
エラーこんなミスは嫌だはじめに本記事では、これまでに学習した中で、ヒューマンエラー、ケアレスミスをしてしまったことを紹介いたします。 |
2021-07-30 21:46:17 |
Ruby |
Rubyタグが付けられた新着投稿 - Qiita |
Ruby HTTPClientでpostする |
https://qiita.com/akinov/items/8892f46ae445fbe4317a
|
|
2021-07-30 21:29:19 |
Ruby |
Rubyタグが付けられた新着投稿 - Qiita |
Rspec |
https://qiita.com/tera487/items/a6b0031f331a1631f607
|
Rspec初期設定RailsでRSpecを利用する場合、一度だけ次のコマンドを実行する必要があります。 |
2021-07-30 21:12:55 |
golang |
Goタグが付けられた新着投稿 - Qiita |
Firestoreをgoの構造体で扱う |
https://qiita.com/sasakuna/items/2349c5fa7ff07930cfc7
|
これを追加すると値の時にそのフィールドをエンコード対象としないことができるらしく、恐らく多くの人はこちらを使っていることと思います。 |
2021-07-30 21:26:33 |
Ruby |
Railsタグが付けられた新着投稿 - Qiita |
[エラー]こんなミスは嫌だ |
https://qiita.com/mkato1013/items/060827278dd701008c3a
|
エラーこんなミスは嫌だはじめに本記事では、これまでに学習した中で、ヒューマンエラー、ケアレスミスをしてしまったことを紹介いたします。 |
2021-07-30 21:46:17 |
Ruby |
Railsタグが付けられた新着投稿 - Qiita |
Rspec |
https://qiita.com/tera487/items/a6b0031f331a1631f607
|
Rspec初期設定RailsでRSpecを利用する場合、一度だけ次のコマンドを実行する必要があります。 |
2021-07-30 21:12:55 |
技術ブログ |
Developers.IO |
SSMのログを別AWSアカウントS3に送る方法 |
https://dev.classmethod.jp/articles/how-to-send-ssm-logs-to-another-aws-account-s3/
|
maruyamasashi |
2021-07-30 12:58:10 |
技術ブログ |
Developers.IO |
AWS マネジメントコンソールを操作していたら自端末から VPC エンドポイントを経由したサービスエンドポイント宛の通信が発生していた |
https://dev.classmethod.jp/articles/management-console-service-endpoint/
|
繰り返し |
2021-07-30 12:21:10 |
海外TECH |
DEV Community |
Top python projects of last year! |
https://dev.to/code_jedi/top-python-projects-of-last-year-2e56
|
Top python projects of last year Here s a compilation of the most popular python projects of last year A terminal based stock analysis tool written completely in python GamestonkTerminal GamestonkTerminal A FOSS alternative to Bloomberg Terminal Gamestonk Terminal The next best thing after Bloomberg Terminal weliketheterminal ≪ROADMAP · FEATURES » Report Bug · Suggest Improvement · Request Feature Table of Contents About The Project Donation Getting Started Install Advanced User Install Machine Learning Update Terminal API Keys Usage Contributing License Disclaimer Contacts Acknowledgments About The ProjectHow it started Gamestonk Terminal is an awesome stock and crypto market terminal that has been developed for fun while I saw my GME shares tanking But hey I like the stock How it s going Gamestonk Terminal provides a modern Python based integrated environment for investment research that allows the average joe retail trader to leverage state of the art Data Science and Machine Learning technologies As a modern Python based environment GamestonkTerminal opens access to numerous Python data libraries in Data Science Pandas Numpy Scipy Jupyter Machine Learning Pytorch Tensorflow Sklearn Flair and Data Acquisition Beautiful Soup and… View on GitHubA Smart Automatic Fast and Lightweight Web Scraper for Python alirezamika autoscraper A Smart Automatic Fast and Lightweight Web Scraper for Python AutoScraper A Smart Automatic Fast and Lightweight Web Scraper for PythonThis project is made for automatic web scraping to make scraping easyIt gets a url or the html content of a web page and a list of sample data which we want to scrape from that page This data can be text url or any html tag value of that page It learns the scraping rules and returns the similar elements Then you can use this learned object with new urls to get similar content or the exact same element of those new pages InstallationIt s compatible with python Install latest version from git repository using pip pip install git Install from PyPI pip install autoscraperInstall from source python setup py installHow to useGetting similar resultsSay we want to fetch all related post titles in a stackoverflow page from autoscraper import… View on GitHubA python project that lets you quickly fetch your WiFi password and if needed generate a QR code of your WiFi to allow phones to easily connect to it sdushantha wifi password Quickly fetch your WiFi password and if needed generate a QR code of your WiFi to allow phones to easily connect wifi passwordQuickly fetch your WiFi password and if needed generate a QR code of your WiFi to allow phones to easily connectWorks on macOS and Linux WindowsInstallationInstall using pip python m pip install user wifi passwordInstall using git git clone cd wifi password python setup py installInstall using the AUR sudo pamac build wifi passwordUsage wifi password helpusage wifi password options optional arguments h help show this help message and exit show qr show Show a ASCII QR code onto the terminal console save qr PATH save PATH Create the QR code and save it as an image ssid SSID s SSID Specify a SSID that you have previously connected to version Show version numberReferenceThis project is an improvement of wifi password created by rauchg where I have added support for multiple platforms and have added the feature for generating QR codes … View on GitHubA terminal based python project that easily lets you identify emails IP addresses and more Feed it a pcap file or some text and it ll tell you what it is bee san pyWhat Identify anything pyWhat easily lets you identify emails IP addresses and more Feed it a pcap file or some text and it ll tell you what it is ️ ️Discord ️The easiest way to identify anythingpip install pywhat amp amp pywhat help What is this Imagine this You come across some mysterious text ️xEFDEEE or dQwwWgXcQ and you wonder what it is What do you do Well with what all you have to do is ask what xEFDEEE and what will tell you what s job is to identify what something is Whether it be a file or text Or even the hex of a file What about text within files We have that too what is recursive it will identify everything in text and more Use CasesWannacryYou come across a new piece of malware called WantToCry You think back to Wannacry and remember it was stopped because a researcher found a kill switch in the code When a domain hardcoded into Wannacry was registered the virus would stop You use What… View on GitHubA python project that turns your machine learning code into microservices with web API interactive GUI and more ml tooling opyrator 🪄Turns your machine learning code into microservices with web API interactive GUI and more Opyrator Turns your Python functions into microservices with web API interactive GUI and more Getting Started • Features • Examples • Support • Report a Bug • Contribution • ChangelogInstantly turn your Python functions into production ready microservices Deploy and access your services via HTTP API or interactive UI Seamlessly export your services into portable shareable and executable files or Docker images Opyrator builds on open standards OpenAPI JSON Schema and Python type hints and is powered by FastAPI Streamlit and Pydantic It cuts out all the pain for productizing and sharing your Python code or anything you can wrap into a single Python function Alpha Version Only suggested for experimental usage Try out and explore various examples in our playground hereHighlights🪄 Turn functions into production ready services within seconds Auto generated HTTP API based on FastAPI Auto generated Web UI based on Streamlit Save… View on GitHubIf you re a beginner who likes discovering new things about python try my weekly python newsletter That s it for this compilation Byeeeee |
2021-07-30 12:46:11 |
海外TECH |
DEV Community |
Which Programming Language Is Best for Taxi Dispatch Software Development? |
https://dev.to/johnmarison2/which-programming-language-is-best-for-taxi-dispatch-software-development-11o2
|
Which Programming Language Is Best for Taxi Dispatch Software Development The programming languages are the vocabulary and a bunch of rules that instruct a computer app software web panel etc how to work There have been different languages to choose from They enable the developers to code programs according to client requirements on a specific digitized platform solution like a mobile app for the business Selecting such an area is much more important to develop taxi dispatch software more advanced and effective to the contemporary market The highly upgraded programming languages offer notable advantages like quick learning fast development enhanced options simple processes etc In which we are going to see the top two program languages Swift and Java to develop taxi dispatch software that is too trendy and too achievable to the latest mart Swift and Java in Technology Stack Both Swift and Java are different programming languages and are mostly used by developers all around the world Swift is a high level language just like Java it would be used for developing iOS apps while Java for others Their individual interfaces and protocols are almost the same Java could be used for different stuff development purposes the Android app is one of them As both languages could be used for mobile app development on different OS platforms they sustain stable connectivity between app development service providers and their clients Most of the well known development companies are still using the languages for custom satisfying app creation services The Part of Swift in the Development Field Today Being Swift is a fast and efficient language for development programmers find it great to use for creating iOS business apps Right from its real time feedback to seamless incorporation into current Objective C code you can quickly provide client centric apps for real time startup launching Utilizing its dynamic library as a developer you can provide your clients decreased app size for upgraded app performance and speedy loading Some winning example apps developed from this easy to use and open source code language are Uber Lyft and Airbnb This cross platform nature is compatible with Linux too Its playground offers developers to try new implements and discard when not okay So you can immediately import new features as requested by your client from his business plan for workouts How Swift Has Still Evolved in Taxi App Development Since Swift was introduced by Apple it has been evolving and modifying continuously It is a free and open source language that could be easily learned by anyone Its complete upgrading from its version to to to to made the programming language great and true to itself Its improved frameworks like GCD and lib dispatch make concurrent programs too easy at the developers end Though Swift is highly focused on security it is widely used for the purpose of data safety The elimination of specific classes by the high tech program language solution allows entrepreneurs to provide a secure platform for their app users Along with much such greatness the key reason for the language s mass evolution in the development field is cost effective solutions could be given to your customers for high productivity How is Java Nowadays Java the object oriented programming language assists you to develop multiple platforms regarding service businesses While you write programs in this language the compiled byte code runs in different operating systems OS which include Android Mac OS Windows etc It deduces a lot of its syntax from the C and C program languages Java offers a number of APIs for developing on demand taxi service apps Because the Java programming language is linked with concepts like class object abstraction inheritance encapsulation etc it allows you to easily develop a pre made taxi business software solution for business Its integral portion of design ensures its robust security to the service app usage The perfect mobile program still holds its ranking in nd place on global developers as they use the language in maximum for developing mobile apps Why Do Programmers Use Java the Most Java is an easy to use open source while Swift is an upgraded one than the object oriented programming language Its design includes write compile and debug making the developers learn development stuff too quickly The language is majorly benefitted with its platform independent ability The programmers can run the same program in different systems which allows them to move software smartly from one computing system to another As Java is the official development platform for google android apps utilizing its wide range of libraries and tools building on demand business apps is most popular amongst developers Its modern UI toolkits allow them to attractively set UI elements for captivating app design Java has strong memory management so the developers can easily handle the exceptions through coding Furtherly the type checking boosts the complete developed app for business more secure to the service operations Its multi threaded environment lets the developers split a bigger task into a diverse of threads and run individually So the advantage of not providing every running thread is covered with the tech stack while developers use the programming language for building taxi dispatch software Which One is the Best for Taxi Dispatch Software Development When it comes to an argument on which one Swift or Java is the best for app development processes the result would be concluded as both Both programming languages are important to develop a successful taxi dispatch software app supported with multiple OS platforms Consequently it assists you to provide an achievable app design with the arguable React Native JS based on Javascript the app developers offer fundamental building blocks which work in both iOS and the Android platforms Applying all their advancements you can build a complete scalable app for businesses apt to the existing taxi service marketplace In ConclusionApp development for business should be comprehended with client expectations market demands adaptable solutions etc to make the entrepreneurs fully satisfied with your services Taking it into consideration as an individual developer organization company making use of both Swift and Java programming languages to build your taxi dispatch software brings mentioned advantages to your service |
2021-07-30 12:35:47 |
海外TECH |
DEV Community |
101 Digital Accessibility tips and tricks |
https://dev.to/inhuofficial/101-digital-accessibility-tips-and-tricks-4728
|
Digital Accessibility tips and tricksHey peeps yes I have written a listicle Don t worry I am OK May I present Accessibility tips and tricks So if you have a minute or an hour OK minutes please give it a read I hope you find it interesting Oh and in case you didn t know accessibility means making your product service etc usable for people with disabilities So whether you are completely new to accessibility dabbled a bit or know your stuff I hope there is something in this listicle for everyone and I truly hope you enjoy it stats for geeks characters excluding fiddles words or roughly pages of a book code blocks jsFiddles images links hours to write and editOne tired boy ContentsDeveloper Tips and general tips Document StructureFormsImagesLanguageNavigationPresentation and DesignSemanticsSocial MediaTablesTestingUsabilityVideosWAI ARIA Developer Tips and General Tips Let s start with some general developer tips when it comes to tackling accessibility Thinking of personas can helpOften with accessibility the biggest problem is remembering what and who you actually have to consider when developing There is a lot to remember over different impairments Image Source Personas are a great way to remember all of the different types of impairments people may have and how you can avoid creating barriers for those people or negate barriers in your code GOV UK did a great write up on personas that I would highly recommend reading It really helps frame why you need to do something and who you are helping Some great resourcesThis is by no means an exhaustive list just big enough to contain useful information small enough that it isn t overwhelming Introduction to Web Accessibility Web Aim great for understanding why and who our work affects Dennis Boudreau s blog a little bit old but nearly everything still applies and the way they present the information is easy to digest The ay project If they just changed the name to the accessibility project and stopped using a numeronym as numeronyms are not very accessible it would be perfect Oh and obviously I need to introduce you to the key reference points Web Content Accessibility Guidelines hard to read but they are the standard that nearly every Country works to Authoring Tool Accessibility Guidelines if you build a Content Management System CMS or a What You See Is What You Get WYSIWYG editor then these are the guidelines you should be following Web Accessibility Initiative Accessible Rich Internet Applications WAI ARIA or just ARIA special attributes we can use to add extra meaning to our HTML Especially important for people who use Assistive Technology AT such as a screen reader RobustThere are principles behind WCAG using the acronym POUR simplified explanations Perceivable Information is accessible via one of your senses Assistive Technology AT can understand and relay information to you if needed Operable All interactions can be performed via any input method that works for you Understandable interfaces should be easy to understand predictable behaviour identify errors in input simplify language etc Robust Developing for one browser is a no no You application should work or fail gracefully without ruining accessibility Throughout this article although I won t reference them directly the POUR principles will apply Often the R Robust is forgotten so I thought I would pay it special attention When developing you should be thinking What happens when JavaScript JS fails notice I said when not if Network failures JS errors etc all mean you code will never be reliable Does this Cascading Style Sheets CSS property have good support if not does it gracefully degrade does the lack of that property being supported break the website and make it unusable Do I provide good feedback to people who use my product when server side errors occur I would highly recommend you bookmark canwe dev It links to useful resources for checking your code and mark up is accessible and compatible with a wide range of browsers Learn to use a screen readerNVDA is free for Windows VoiceOver is included on Apple devices ORCA is on nearly every Linux distro It costs you nothing other than maybe minutes of your time to learn how to use the basic functionality of a screen reader Once you have learned how to use a screen reader you will immediately find out how bad your code and mark up is of website home pages have accessibility errors that are detectable automatically you don t think you are in the top do you Learn to use a screen reader and test your site and components you build with it Have a checklistDeveloping a new component Starting a new project Overhauling an existing site Have a checklist You can t possibly remember everything you need to think about Here is an accessibility checklist to get you started or you could use this detailed WCAG checklist instead once you have gotten used to accessibility principles Beware Content Overlays claiming to fix accessibility for you There is a library or service for everything But accessibility is one area that hasn t quite caught up with that idea yet There are a lot of companies such as AccessiBe EqualWeb UserWay etc that claim to be able to fix accessibility on your website in just one line of code using Artificial Intelligence AI or more accurately Machine Learning ML They do not work in fact a lot of the time they make things worse Don t believe me If you have an accessibility checker installed in your browser for example Axe for Chrome go to sprouts com and run a test Then scroll down to the bottom of the page and click accessibility in the bottom left part of the footer and turn on blind users mode on the popup The sprout site goes from errors on the home page to And those are the ones we can pick up automatically It should be noted that I was going to suggest neilpatel com to check as that used accessibility overlay until recently However it finally seems he has listened to people complaining as the site now only has colour contrast change abilities from what I can tell Neil if you ever read this just change the colours behind text and use your brand colours elsewhere dark grey goes great with orange and provides great contrast If you still don t believe me on accessibility overlays just read this blog post on AccessiBe from Adrian Roselli Or maybe watch the following video from Haben Girma the first deaf blind person to graduate from Harvard Law and a disability rights activist I could go on but I think you get the idea There are no shortcuts currently Legal stuffIn most countries it is illegal to produce a website that isn t accessible under disability equal rights laws If you want to see a list of all the applicable laws in different Countries plus my thoughts on why accessibility still isn t being addressed I would suggest checking out this section of my recent post on understanding why accessibility gets ignoredOh and if you operate in the US accessibility lawsuits are set to reach a record high in Just a little food for thought before you write another key stroke Accessibility first costs very little Are you a product manager stakeholder do you make the decisions Or are you a loud mouth like me who won t shut up about things Put accessibility as a top priority today and get the whole team on board Designing a product to be accessible from the start adds very little time and effort Trying to make an existing product accessible is time consuming costly and could even require complete rewrites of some parts of your applications if you really got things wrong from the start Save yourself a lot of trouble start with accessibility rather than it being something you will do later as it will save your company a fortune and a load of headaches Document StructureOne of the key aspects of accessibility is how your web page is structured It also helps with Search Engine Optimisation SEO and organising your layouts So stop using lt div gt soup and learn how to use HTML properly Headings are very importantPeople who use a screen reader like yourself you did learn how to use a screen reader as discussed in point didn t you primarily use the keys to cycle through headings lt h gt to lt h gt on the page Headings also make the document a lot easier to understand for everybody else as it gives the page structure and hierarchy So don t use lt p class h gt use the appropriate heading element when it makes sense On the flip side if a heading is not the right size in the design use CSS to change it Don t use a different heading because it looks better That leads me nicely on to Don t skip heading levelsRemember how I told you that people who use a screen reader tend to navigate with the keys to get an idea of the page structure and contents Well if you skip heading levels it can be very confusing as they expect a heading level find it doesn t exist and may assume there is no further relevant content Here is a simple Chrome plugin to find skipped heading levels Run it on your articles sites and products before you publish and try and get the heading levels into a logical hierarchy There are heading levels If you have a really complex document you may find that you need a th heading level While these do not exist in native HTML they do exist as WAI ARIA attributes This is useful for people who use Assistive Technology AT as it provides even more information about the structure and relationships on a complex page You might not need to use it often but it is handy to have in your back pocket for those rare occasions lt h gt A deeply nested section lt h gt lt p gt Some Text in heading level lt p gt lt div role heading aria level gt This is effectively a lt h gt even though they don t exist lt div gt lt p gt content lt p gt You can even use CSS selectors to style them automatically without the need for extra classes etc ensuring you don t forget to add a class etc aria level font weight bold font size rem One lt h gt per pageI will end the debate here and now It may be valid HTML to have more than lt h gt on a page it is not considered a good practice Your lt h gt should describe the current page location to ease navigation so that people know where they are on the site Every page should have a lt h gt and only one lt h gt It is the expected way pages are structured and expected behaviour is a key element for accessibility Expected behaviour and expected design patterns are why you tend to see menu buttons on mobiles at the top of the page Even though it is a usability nightmare that is where they are expected to be Don t worry though even though most of the points in this article are you must if you do decide to use multiple lt h gt s you can still be WCAG and legally compliant it is just annoying for people who use a screen reader Landmarks are important tooTo try and explain landmarks in their entirety would take a whole article But you should learn about and use the following elements to organise your content lt header gt lt nav gt lt main gt lt section gt lt aside gt lt footer gt lt article gt It is important for people who use AT as they may also cycle by sections when exploring a page not just headings It is great for SEO as search engines can then understand relationships better on the page It is also better for you as a developer as it makes it easier to maintain a page hierarchy and split a page into manageable sections Headings and SectionsIf you structure your document correctly see the tips in the previous point then you will probably end up using the lt section gt element to separate distinct areas of the page To make these sections useful for people who navigate via sectional elements you should use WAI ARIA to associate the heading for that section with the section itself The normal and probably easiest way to do this would be using aria labelledby pointing to the heading of the section with a corresponding ID lt section aria labelledby sectionHeader gt lt h id sectionHeader gt A great section lt h gt lt section gt lt section aria labelledby sectionHeader gt lt h id sectionHeader gt An even better section lt h gt lt section gt Give the page a descriptive lt title gt The lt title gt element is normally read out by AT when page navigation occurs a new page is loaded As such a descriptive lt title gt is important If you have a site where multiple pages have the same lt title gt content it can make navigation confusing Make sure every lt title gt is unique across the entire site DOM order should match visual orderIf you are using flex direction row reverse in your CSS you have probably caused an accessibility issue on your site The order in the DOM should match the logical order the flow and how you would read them naturally of items on the page This is important as if you have boxes A B and C and you use flex direction row reverse or float right this is no longer true They will appear visually as C B and A You will probably then reverse the DOM order so that visually they read A B C Unfortunately people who use AT such as screen readers will read the content as C B A while everyone else reads the page as A B C Items should be added to the DOM in the order that you would expect them to be read visually Your CSS should not interfere with this order Focus order should match DOM orderIn a similar fashion when someone Tabs through the page controls such as links buttons etc should be focused in a logical order This is why it is very rarely a good idea to use positive tabindex attributes as they change the focus order of the document lt div tabindex gt I am focused last lt div gt lt div tabindex gt I am focused second lt div gt lt div tabindex gt I am focused first lt div gt lt a href tabindex gt I don t receive focus at all lt a gt If you need to make something focusable within the focus order of the page then use tabindex Note this normally means you haven t used the right HTML element Double check there isn t a better element if you are using tabindex to add an element to the page focus order Adding tabindex will allow the element to be in the logical place in the DOM focus order remember point make sure your DOM order is correct Don t use tables for layoutsYou would think I wouldn t have to say this in but it still happens lt table gt s are for tabular data not for laying out a page I am aware email is an exception to this rule don t me Instead use CSS and relevant semantic HTML elements You may inherit a legacy application where removing tables is completely infeasible As a last resort you can use role presentation on every single lt tr gt lt td gt etc to remove the semantic information from the table elements with role presentation effectively become lt div gt s It is not ideal but that is your get out of jail free card if there is no other choice Link Text button text and labels should be uniqueAll links on a page should have unique link text that perform different actions So if you have a load of read more links then you have some work to do There are loads of ways to fix this too many for an article like this but here is a typical example using aria labelledby to change the link text for AT lt article gt lt h id article title gt My super duper article lt h gt lt img attributes etc here gt lt p gt Article brief description with truncation lt p gt lt a href article url aria labelledby article title gt Read more lt a gt lt article gt lt article gt lt h id article title gt Your code sucks lets fix that lt h gt lt img attributes etc here gt lt p gt Yes you your code sucks but we can help lt p gt lt a href article url aria labelledby article title gt Read more lt a gt lt article gt You can apply similar techniques for buttons in tables with repeated rows labels on forms if you have two different forms with the same label text on a page etc Note In the opening sentence of this tip I noted that the text should be unique if a link button etc performs a unique action If two hyperlinks go to the same document at the same place then the link text can and probably should be the same FormsFrom a simple contact form through to an online exam forms are important So lets make sure everyone can use them LabelsIt is unreal to think I still have to say this but add labels to your inputs No a placeholder attribute is not sufficient a lt label gt element associated with an lt input gt is essential With that being said it isn t entirely your fault WCAG does make it difficult to answer even simple questions I was shocked that placeholder text on an lt input gt instead of a lt label gt might TECHNICALLY PASS WCAGDo you agree InHuOfficial・Jul ・ min read ay html webdev discuss Labels should always be visibleAn always visible label is essential for people with cognitive impairments or anxiety related disorders Without them you can end up with people having to delete the information they inputted to ensure it was correct then re entering their information On a sufficiently long form this can mean they never complete the form This is one of the reasons why a placeholder attribute is not sufficient for labelling a control Associate labels with inputs A label on its own isn t much use for a screen reader We need to tell a screen reader which input control a label belongs to While it is perfectly valid to use implicit labels lt label gt First Name lt input name first name placeholder e g Toni gt lt label gt Certain dictation voice control software does not work with implicit labels As such you should use explicit labels or what I like to call old school labels lt label for firstName gt First Name lt label gt lt input name first name placeholder e g Toni id firstName gt Where you associate the label with the input using for IDofInput There is an added bonus with correctly associated labels using either method you can click them and it focuses the corresponding input This increases the clickable area to focus an input more on tap target sizes later Labels should be visually next to inputs Your label should be nice and close to the input it labels Having a lot of white space between a label and the input it is linked to can be problematic for people who use a Screen Magnifier This is a piece of software that zooms into a part of the screen to make it easier to read One way to know how this feels is the straw test Close your fist until there is a gap the width of a straw left open Now hold your hand up to one eye and look through the tiny opening This will give you an idea of how much of the screen someone using a screen magnifier can see at once This is also the same for someone who has a condition that causes tunnel vision where only a small part of their visual field provides useful vision There are a lot of other vision impairments that limit the field of vision so arrange related items so they are close together Group Related FieldsIf you have numerous inputs that are related you should group them using lt fieldset gt You can then label these grouped controls with the lt legend gt element lt fieldset gt lt legend gt Shipping Address lt legend gt lt label for shipping name gt Name lt label gt lt input type text name shipping name id shipping name gt lt label for shipping street gt Street lt label gt lt input type text name shipping street id shipping street gt lt fieldset gt lt fieldset gt lt legend gt Billing Address lt legend gt lt label for billing name gt Name lt label gt lt input type text name billing name id billing name gt lt label for billing street gt Street lt label gt lt input type text name billing street id billing street gt lt fieldset gt Please note that you should use either visually hidden text or WAI ARIA to add extra info to labels I did not include that in the above example to make the example easier to follow Although covered later a robust CSS class for hiding content visually but making it still accessible for screen readers is visually hidden border padding margin position absolute important height px width px overflow hidden clip rect px px px px IE IE a height clip off to the bottom right of the visible px box clip rect px px px px maybe deprecated but we need to support legacy browsers clip path inset modern browsers clip path works inwards from each corner white space nowrap added line to stop words getting smushed together as they go onto seperate lines and some screen readers do not understand line feeds as a space You can find more information on grouping inputs on w org Allow people to review informationIf you are collecting more than just basic information or if submitting information cannot be reversed there is no way to edit it once submitted you should allow people to review that information before final submission The easiest way to do this is once someone submits a form you present that information back to them Allow them the option to edit that information before submitting This is particularly important for things like financial transactions such as transferring funds to another person It is also important for legal commitments such as agreeing to terms and conditions of a sale or purchase WCAG technique G can help with further guidance on this Errors should be associated correctlyIf a person makes a mistake on your form you should ensure that any error messages are clearly associated with the input they have filled in incorrectly So from a visual perspective errors should either be directly next to the relevant input Alternatively all errors can be presented at the top of the form but the relevant inputs with errors should be highlighted with more than just colour Ensure an icon or text is visible as well that indicates where the errors are Finally for people who use Assistive Tech AT we need to associate the error with the relevant input for them as well One way this can be achieved is with aria describedby You should also add aria invalid to the input to indicate there is an error lt form gt lt label for email address gt Your Email Address lt label gt lt span id email error gt Error Your email address must contain an symbol lt span gt lt input id email address type email aria describedby email error aria invalid true gt lt form gt Use autocompleteAutocomplete can be really useful for people with cognitive impairments especially those affecting memory and information retention It also makes life easier for everyone else There are a lot of options for autocomplete but support varies across every browser however support for autocomplete is pretty good overall For example when filling out credit card information your form may look something like lt label for CCname gt Name on card lt label gt lt input name name id CCname autocomplete cc name gt lt label for CCnumber gt Card Number lt label gt lt input name cardnumber id CCnumber autocomplete cc number gt lt label for CCcvc gt CVC numbers on back lt label gt lt input name cvc id CCcvc required autocomplete cc csc gt lt label for CCexpiry gt Expiry lt label gt lt input name cc exp id CCexpiry autocomplete cc exp gt Try to avoid autocomplete off on inputs unless you are sure they will not be filled in correctly Don t disable pasteI think I can sum this point up in a comment I recently made on an article on DEV to There is a special circle in hell for people who disable paste A massive security issue as it makes people choose simpler passwords etc and an even bigger accessibility issue as people with cognitive disabilities may rely on copy and pasting information to fill out forms authentication etc Luckily WCAG addresses this fact so it will now mean your site is not WCAG compliant and therefore illegal in about of countries So don t do it on inputs or at all preferably Original comment ImagesMaking images accessible is not that difficult But this is one of the quickest wins for most websites when it comes to accessibility improvements alt attributesI feel like a broken record it is why have people not got this yet Every image that adds meaning to a page should have an alt attribute This is useful both to people who use AT but also for people who disable images on their devices e g to save data And it isn t difficult to write a good alt description in most cases either Just imagine that you are reading the document to someone over the phone and describe the image to them Do that and you will write a great alt description Oh and alt attributes are not about SEO for the love of all that is mighty just stop trying to keyword optimise your image alt attributes if you actually add them Don t add alt text to imagesWait but you I don t get it Sometimes images are for presentation only So they could be background images for example They add nothing of value to the page or to someone using AT or with images switched off In this case you should add an empty alt attribute alt This means that AT will ignore this image Leaving the alt attribute off entirely can lead some screen readers to try and read the file name out and as you can imagine that is not a good experience Top tip For decorative images add role presentation as well This allows you to search for images on the site with empty or missing alt attributes so you can fill them in but if they have role presentation you know you can skip over them as they are purely decorative Don t use picture of in alt attributesAssistive Tech AT will already know that they are currently on an image and they will assume it is a picture of something So don t write alt picture of a flower it adds nothing just write alt a flower With that being said if the image is an illustration graphic etc it is good information to add So if you had an illustration of a light bulb alt a light bulb is not as good as alt line drawing of a light bulb or alt light bulb graphic Even then don t use picture of alt a picture of a line drawing of a light bulb as you can see it adds loads of unnecessary noise And in case you take things literally alt a woman smiling while looking at a picture of her children is OK as the picture is part of the image you are describing Use lt figure gt when appropriateIf an image has extra meaning that may be useful to a reader such as where the image was taken who is in the image when the image is from etc then having a caption normally underneath for the image is useful The lt figure gt element allows us to easily associate a caption with an image lt figure gt has a few other uses but this is the main one For the caption we can also use a semantically correct HTML element the lt figcaption gt element By combining these two AT can understand the relationship between the caption and the image and expose that information to the person using the Assistive Technology lt figure gt lt img src img jpg alt squirrel gt lt figcaption gt A Grey squirrel eating nuts in the Woods lt figcaption gt lt figure gt For complex graphs charts etc have an alternativeSometimes it just isn t possible or incredibly difficult to make a complex graph or chart accessible for all One way you can fix this is by providing a text alternative Typically for charts and graphs these are derived from tabular data so include a table of the data Later in this list we cover hiding content visually if your design cannot accommodate a table i e a dashboard with limited space When dealing with infographics you could provide a correctly marked up and accessible PDF as an alternative Better yet an accessible HTML equivalent of the page with all the same info could be created Having an HTML equivalent or an infographic is good SEO practice I would suggest that is the best option Inline SVGs don t have alt attributesScalable Vector Graphics SVGs are really useful for websites This is due to the way SVGs scale to any size without loss of quality and they generally have a small file size They can also be inlined within the HTML so they save on network requests If you inline an SVG though you can t add an alt attribute to it Instead you add a lt title gt within the SVG itself The lt title gt is the accessible name for the SVG and is the equivalent of an alt attribute on an lt img gt element The same rules apply for what to enter in the lt title gt as a standard image imagine you are describing the image to someone over the phone It is worth noting there is also the lt desc gt element Useful for if your SVG image is particularly complex and needs a longer description This is roughly the same as lt figcaption gt for an image lt svg width height gt lt title gt Dark rectangle lt title gt lt desc gt A grey rectangle with rounded corners and a dark green border lt desc gt lt rect width height rx ry fill stroke b stroke fill gt lt svg gt LanguageSetting the right language and using the right language are the keys to accessibility bliss Use the lang attribute on your documentSetting the language of the page is important for people who use AT it is also important so Google etc can offer page translation easily lt html lang en gt A list of language codes can be found here Use the lang attribute on change of language Maybe your main document is in English but you like to mix things up and add the occasional French phrase in there For people who use Assistive Tech AT this can be really problematic if you don t mark it up correctly A screen reader will try and read the French text using an English Dictionary and rule set and probably fail miserably So if you change language within a document be sure to use the lang attribute on an element that wraps the text in a different language You do not need to switch back to the original language only the text within any element with the lang attribute will be treated differently lt html lang en gt lt skipped a load of HTML gt lt p gt The only German I can remember from school is lt span lang “de gt ist sehr gut lt span gt which is shocking I am afraid my French is no better lt span lang fr gt mon ami lt span gt I am a typical Brit when it comes to languages I am afraid lt p gt lt skipped a load of HTML gt lt html gt Avoid jargon and complex wordsMaybe you are a content creator and happen to be reading this Here is a tip that I want you to remember above all the others One in adults has the reading age expected of a year old So while you are using jargon and complex words to sound smart you aren t doing that all you are doing is alienating about in people Keep your language as simple as you can Abbreviations and AcronymsIn tech and digital we love our acronyms and abbreviations HTML CSS JS URL AWS S etc The golden rule is to never assume that a person reading your articles knows what an acronym or abbreviation means by default even if you think it is obvious To account for this HTML has the lt abbr gt element used to indicate a word or phrase is an abbreviation or acronym Unfortunately the lt abbr gt element guidance suggests we should use the title attribute to explain the abbreviation acronym in full This isn t particularly accessible I will write an article on how to address that problem in the future as it isn t as simple to fix as you may think In the mean time we can use the lt abbr gt element with a title attribute as suggested lt p gt Using the correct lt abbr title HyperText Markup Language gt HTML lt abbr gt in your articles will make them more accessible HTML consists of many semantic elements such as lt p gt Or better yet you can spell the term out in full the first time you use it and put the abbreviated version in brackets lt p gt Using the correct HyperText Markup Language lt abbr gt HTML lt abbr gt in your articles will make them more accessible HTML consists of many semantic elements such as lt p gt In both cases you should only explain an abbreviation once when you first use it or if an article is particularly long like this one periodically throughout the document as a reminder just as long as it isn t too often Offer a signing optionRemote sign language interpretation services via video can be added to your website or web app They allow you to engage with people who speak sign language and yes speak is the correct term and yes it is a whole different language A lot of remote sign language companies have a small or zero sign up fee Many also offer pay per minute while you judge demand so the financial barrier to adding this to your site is lower than you might think This is especially useful to know if you work with professional services such as Doctors Solicitors Lawyers etc Some of these interpretation services can even be accessed via an API so you can integrate them directly into your website A lot of them have a button that redirects you to another website as a part of their solution which may not always be desirable NavigationMaking information easy to access and locate is your number one job Let s see what you need to consider here Have a HTML sitemapYou have a XML sitemap don t you I sure hope so if you want your site to rank well But do you have a HTML sitemap While also useful for SEO it has an added benefit people can use it to navigate your site amazing right This is particularly useful when you accidentally introduce an accessibility error as we all make mistakes that means certain people can t reach parts of the site via the menu etc Oh and if you don t have a search box on your site it is a great way to meet Success Criterion SC Multiple Ways Keyboard navigationPut the mouse away and try and navigate your site with just the keyboard Can you access all the same information nothing is only available on hover is it If you can t then you need to fix that A lot of people rely on their keyboard to navigate as using a mouse is difficult or impossible As an added bonus it means your site is far more likely to be mobile friendly If you can reach and use everything that is interactive via keyboard it should work on mobile as you can t hover on a mobile not properly anyway Reduce tab stopsNow that you have tried using your website with a keyboard you may have discovered that while everything is reachable by keyboard your menu is horrendous to use if it is a decent size site with dropdown menus If you have a large menu with drop downs you don t want every single menu item to be in the focus order of the page by default This can lead to tab fatigue and make the page really hard to use with a keyboard Make sure that any drop down menus are activated via Enter or Space if appropriate and only then can the drop down items be tabbed to For examples of this kind of behaviour check the W fly out menus page s I explained this desired menu behaviour in a bit more detail in this Stack Overflow comment answer re Making menu drop down on focus for accessibility Dec I would like that when a user tabs through links focus the menu will drop down and continue to let the user tab through submenu links This is the exact opposite of accessible I am afraid To be accessible you want a menu where you have to activate the drop… Open Full Answer Or if you want an example closer to home try tabbing through the dev to home page feed Luckily DEV have added j and k to skip between articles but for people who don t know that the home feed is exhausting with a keyboard This is not a jab at dev to by the way they do a decent job of accessibility in most areas this is one that just needs looking at If you find that you have a similar problem on your site then reconsider the design Include a skip link to bypass site navigationContinuing the theme of making things easier for people who use a keyboard your site should include skip links also known as bypass blocks These are links that are normally hidden at first and only appear when you use Tab to enter the page Their purpose is nearly always to allow people who use a keyboard to skip past the navigation if they wish This is useful if they are visiting multiple pages and you have a large menu it means they don t have to Tab past it to get to the content on each page load You can have more than one skip link Most of the times you see skip links bypass blocks they will only allow you to skip the navigation page header and get to the content While this is fine you are not limited to this For example in a recent article I wrote I had a massive table of Countries and the relevant laws in those Countries with loads of links in each row Before the table I added a link that says Skip large table on laws that protect people with disabilities This link pointed to an anchor after the table so people who use a keyboard didn t have to tab times You can see that here Accessibility understanding WHY it is important and why the current approach doesn t make people implement it InHuOfficial・Jun ・ min read ay webdev beginners discuss Or it may be useful to provide a skip link to the page footer or other section such as the lt aside gt if you have one Useful if you have lots of important information located in the footer A simple example of multiple skip links can be found at the end of the following Stack Overflow answer I gave answer re Is it acceptable that the Skip Main Navigation link focuses on a page s main content and then ignores what is in the footer Jul No this is not an issue They would use navigation keys read next in any screen reader In NVDA this would be the NVDA key and the down arrow normally This is expected behaviour assuming your page uses the correct markup and doesn t have problems without seeing the page it… Open Full Answer Add a contents sectionIf you have a reasonably large page it is highly advisable to add a table of contents a contents section detailing the headings sections or at least the top level headings in the article page This yet again makes life easier for people who use a keyboard It also helps everybody else as the document structure is now much easier to understand and jumping to the relevant section is easy Handling multiple navigation areasWe have previously mentioned that your site navigation should be contained in a lt nav gt element This lets assistive tech know that this is the site s main navigation But what if you have navigation links in the footer or in an lt aside gt as well The answer is simple enough you just label the lt nav gt elements We can use aria label to do this and give each section a relevant name lt header gt lt nav aria label main navigation gt lt ul gt lt li gt lt a href a link gt link lt a gt lt ul gt lt nav gt lt header gt lt main gt lt main gt lt footer gt lt nav aria label footer navigation gt lt ul gt lt li gt lt a href a different link gt new link lt a gt lt ul gt lt nav gt lt footer gt BreadcrumbsBreadcrumbs are a great way to tell people where they are on the site They also help our friends who use a keyboard again providing another quick way to navigate the site We are going to reuse the trick from the previous point wrapping the breadcrumbs in a lt nav gt element and labelling it with aria label as that helps our friends who use a screen reader lt nav aria label Breadcrumbs gt lt ol gt lt li gt lt a href gt Home lt a gt lt li gt lt li gt lt a href gt Products lt a gt lt li gt lt li gt lt a href gt Children s clothing lt a gt lt li gt lt li gt lt a href aria current page gt Shoes lt a gt lt li gt lt ol gt lt nav gt Notice how on the current page I added another WAI ARIA attribute aria current This lets people who use a screen reader know that this is where they are now Personally I tend to not make the current page a link in breadcrumbs which is fine if the page is easily identifiable from the page lt h gt and lt title gt as discussed earlier Also notice that I used an ordered list lt ol gt to contain the breadcrumbs to reflect the fact that breadcrumb sections have an order It s a trap Sorry I couldn t resist But keyboard traps are no joke A keyboard trap means that a person who uses a keyboard can enter a part of a page and then gets stuck in a focus loop with no way to get out of it other than reloading the whole page This tends to happen a lot with modals where developers forget to add a proper close button they use a lt div gt and a click handler rather than a lt button gt to close the modal so it isn t reachable via keyboard So although you should have already checked your site is fully usable with a keyboard in point Keyboard navigation this is a particular one to bear in mind when you are designing modals trapping focus within a custom control etc Make sure you can close modals with a lt button gt that is reachable via keyboard and also make sure that the Esc key closes any modals or lets you escape from any control where you trap focus Presentation and DesignMore of a graphic designer or CSS focused kind of developer Then this section is one where you should pay particular attention Let s talk about visual presentation and accessibility Colour contrast of textThere are a hundred articles on this on the internet already So I will just point you to this WebAim article explaining Colour Contrast At least linking to that document will stop this article getting any longer Well done by the way almost half way through I am impressed I do however have a couple of quick tips to make checking colour contrast easier Quick tip Dev toolsUse the Select an element to inspect it tool located at the very top left of the Dev Tools window Hover over an element on the page and a large tooltip will appear If it can be computed the tooltip will show the Contrast ratio and a tick if it is OK a cross if not Accessible Name essentially the text that people who use AT will receive Role what type of content this is which will be announced to people who use AT if the item is interactive so they know how they can interact with it Keyboard focusable letting you know if this item can be focused using Tab for example It is worth noting that if you click on the element and find the relevant color property in the style panel there are even more colour contrast related tools for you to discover Quick tip check contrast anywhereSometimes Dev Tools won t display a contrast level as it can t determine a foreground or background colour to make a comparison Or sometimes you might not be working in the browser and want to check contrast on a design etc Luckily there is a free piece of software called Colour Contrast Analyzer by the Paciello Group you can download It is available for Windows and Mac With that you can check any two colours on the screen for contrast Great for if you want to place text over an image so that you can check the lowest contrast sections are still within acceptable values Contrast on controlsControls such as lt input gt s etc should also have sufficient contrast with their surroundings There is quite a lot of nuance to this point lt button gt elements do not have to have a background at all as long as the text has sufficient contrast for example The Understanding Success Criterion Non text Contrast page from W while quite wordy covers this in detail as it is far too large a subject to cover here Visible focus indicatorsPeople who use a keyboard rely on having a visible focus indicator so they know where they are on the page Normally this would be an outline around a focused control link etc Some people remove these don t they are important Without them people who use a keyboard will not be able to determine what they currently have focused It is also recommended that you set these yourself in CSS rather than relying on browser defaults so they are more prominent Yet again there are guidelines in WCAG on focus indicator colour contrast requirements that cover this However the new rules and guidance are complex so I would say as a general rule go for a outline colour with a contrast ratio with your site backgroundmake it at least pixels thick equivalent This will easily take you past the minimum requirements and will in fact take you to AAA level for contrast requirements Font SizeLets keep this one short and simple No font on your website should be less than px pt or equivalent in size If you find you need to make the font smaller than that change your design That s it I told you this was a quick one Font units rem and em units Keeping things simple to give you a break in such a long article as I am such a nice guy don t use px units for font sizes rem units and em units scale according to the font size that people have set in their browser This means that if they set their font size preference to extra large the text on your site will get bigger and match their needs if you use rem or em units Personally I recommend just using rem units as they are always set by the document root size em units can get confusing if you aren t careful Oh and now you are using rem and or em units for font sizes the minimum font size is rem or em that you should be using Line heightTo aid readability the line height of blocks of text more than a single sentence should be line height Single sentences are exempt from this rule so lt h gt to lt h gt s that span more than one line do not have to have a line height of for example Just make sure text doesn t run into itself by setting a line height less than Paragraph spacingSimilar to line height requirements the space between paragraphs is important to aid readability As a minimum the space between paragraphs should be double the font size To get a gold star WCAG AAA the space between paragraphs should be times the line height so a minimum of rem It is actually more complicated than that but this is easier to follow Line Height Paragraph spacing and moreWCAG the latest version just released has added a new guideline that makes your job as a designer even more interesting Success Criterion Text SpacingFor a AAA rating your design should be able to accommodate custom style sheets These allow people to adjust your site to their needs The minimum requirements are that a person should be able to set all of these at the same time without it breaking your site design content overflowing etc Line height line spacing to at least times the font size Spacing following paragraphs to at least times the font size Letter spacing tracking to at least times the font size Word spacing to at least times the font size All I can say is if you build sites that are in German good luck with that requirement given some of the fantastically long words you all use Line lengthWith blocks of text especially articles or the main page content you should aim to have about characters per line This helps readability and is especially useful to people who visit your site who are dyslexic as long lines can mean that they lose their place easily It also makes things nicer to read for everybody else Don t justify textYou don t see it often but sometimes websites use fully justified text where the text lines up on both the left and right hand side of the parent container Yet again this can be a real problem for certain people for example people who are dyslexic again Why is it important that you don t use justified text Justified text creates voids in blocks of text These are large vertical white spaces that all line up This can draw your eye downwards while reading a line and make things difficult to follow This text simulates justifiedtext taken to the extreme Look how a large white voidhas appeared after the firstword on each line of text Some may find this verticalgap in the text distracting Don t use UPPERCASE TEXTNow you may think it is because I am going to say it looks like you are shouting at somebody And if you use all caps on a large block of text it will and you probably shouldn t do that But this is more for things like short headings button text etc where all capitalised letters may look aesthetically pleasing and not like shouting What I actually mean is that the underlying HTML should not use all caps If you want your buttons or headings to have all caps then use CSS to achieve it This is important for people who use a screen reader Otherwise it is likely that their screen reader will try and interpret the text as an acronym this can produce some rather interesting results You can capitalise words with CSS using the text transform property with a value of uppercase lt don t do this gt lt h gt WELCOME TO OUR SITE lt h gt lt do this instead gt lt style gt h text transform uppercase lt style gt lt h gt Welcome to our site lt h gt Screen reader only textWhile we are talking about text let s talk about a great trick to have up your sleeve as a developer working on improving accessibility visually hidden text Essentially this is text that is only for assistive technology and does not appear at all visually While aria label may be neater it may surprise you that much like CSS support different screen reader and browser combinations have varying levels of support for WAI ARIA Visually hidden text is more robust if you can put up with the odd lt span class visually hidden gt Screen Reader Only lt span gt in your HTML mark up you should use it Oh and stop being a mark up purist WAI ARIA will make your HTML ugly anyway Here is a class I mentioned in point that has been tested to destruction Use it for hiding things visually while making sure screen readers can still access them visually hidden border padding margin position absolute important height px width px overflow hidden clip rect px px px px IE IE a height clip off to the bottom right of the visible px box clip rect px px px px maybe deprecated but we need to support legacy browsers clip path inset modern browsers clip path works inwards from each corner white space nowrap added line to stop words getting smushed together as they go onto seperate lines and some screen readers do not understand line feeds as a space So when do we use visually hidden text Although there are lots of use cases generally it is used for when something is portrayed visually using an icon for example but there is no way for a browser screen reader to determine any accessible information For example if you are using Font Awesome or other font based icons you may have mark up like this lt a href gt lt i class fa fa twitter gt lt i gt lt a gt To make that accessible we need some text within the link to read out otherwise it will say something like link empty or link which is an awful experience So using visually hidden text we can fix that as follows lt a href gt lt i class fa fa twitter aria hidden true gt lt i gt lt span class visually hidden gt Follow InHu on Twitter lt span gt lt a gt Now instead of an empty link it will say Link Follow InHu on Twitter or similar aria hiddenIn the last point I snuck another WAI ARIA attribute in there Did you spot it I added aria hidden to the icon This attribute when set to true will hide the element and its contents from screen readers Technically it will hide an element and all of it s non interactive content from screen readers lt input gt s lt button gt s lt a href link gt s etc will still be accessible if they can receive focus Anyway aria hidden may not immediately make you think of presentation and design as it doesn t affect anything visually but you are not thinking about it from the perspective of someone who uses a screen reader They have a mental image of what the page looks like and you still need to make sure that it is designed and presented in a logical way So when do we use aria hidden Normally we use it to hide items where we have provided a text alternative using the visually hidden text You will find that it is often applied to complex items or visual only items for want of a better term Items that we cannot describe well using other techniques or add semantic meaning to using WAI ARIA Don t go using it to hide large blocks of text or content that isn t fully accessible The main idea behind accessibility is to offer as similar an experience as possible to everybody Another example might be a complex graph or chart where we have provided an alternative in the form of a lt table gt with the relevant data The chart graph could cause a lot of confusion if it is not accessible As such we would hide it with aria hidden true and let people who use a screen reader access the information within the lt table gt we provided instead aria hidden and visually hidden tend to stick together In the example I just gave there is another trick we could do We could add the data to the page as a lt table gt within the HTML Then use JavaScript to take the table data and turn it into a graph to replace the table Within our JS when it has successfully created the graph we could add JS that adds aria hidden true to the graphadd the visually hidden class to the lt table gt element Now we have a graph to display the information visually and a table to present the information to people who rely on assistive tech It isn t a perfect example of accessibility as some people who use a screen reader use it to aid comprehension rather than as a visual aid because the graph itself should be made accessible But it is a lot better than nothing and a reasonably acceptable solution A more common example is with icon fonts as we did earlier We hide the icon so it doesn t interfere with a screen reader and provide screen reader text with our visually hidden class Icon fonts probably aren t a good ideaLook the debate on this rages on but in reality SVG icons are better in of cases This article on fonts vs SVGs may be from so things have changed slightly but overall the outcome is the same Rather than labour the point and start an argument all I will say is that SVG icons are easier to make accessible Remember earlier when we said that SVGs had a lt title gt attribute that acts like alt text on an image Instead of all of the visually hidden text and aria hidden stuff we can just do lt a href gt lt svg viewBox gt lt title gt Follow InHu on Twitter lt title gt lt path d M c z gt lt path gt lt svg gt lt a gt When a person who uses a screen reader gets to that link it will read link Follow InHu on Twitter the same as before Sure that may look like a load of HTML and there are ways we can tidy that up with lt use gt but the SVG can be copy and pasted in to our document We can then give it a lt title gt if it doesn t already have one To make it simpler to understand what we essentially did was lt a href gt lt svg gt lt title gt Follow InHu on Twitter lt title gt lt svg gt lt a gt Oh and don t forget custom style sheetsIt isn t the problem it used to be but people with disabilities may use custom style sheets that replace the fonts on a site Most of the plugins that do this nowadays know to ignore icon fonts If they don t ignore icon fonts you end up with a lot of broken icons You will not have such problems with an SVG Don t use colour alone to convey informationSome people are colour blind about in men and in women have Colour Vision Deficiency CVD Overall of people have some form of CVD in the world So if you use green for good or on and red for bad or off you need to provide another way to convey that information Have a button that turns green when a save is complete Then make sure a little tick icon appears or change the button text to say saved Building or designing a dashboard that shows support tickets Don t just use red yellow and green as indicators of how old the ticket is or how urgent it is On a side note odds are that yellow won t have very good colour contrast so you probably shouldn t use those colours anyway Oh and once again if you just use colour to convey information what do people who use a screen reader hear Make sure there is some programatically determinable state information information a screen reader can parse and understand While not the accessibility ideal one option is to create a CVD friendly mode colour blindness mode that switches colours out for patterns But you should only really do this if you are fixing accessibility on a legacy product if developing from scratch then just account for CVD from the start Don t forget selectionOne of the quickest tips in this list Make sure your text selection colour has sufficient colour contrast with the text it applies to same rules as other text There is no point having a black selection colour on black text although most browsers will intervene and stop you doing this anyway Think about animationsA term that doesn t get used as much as it used to is progressive enhancement I like to think of animations as a progressive enhancement You see for the majority of people they will add some sparkle charm and interest to your page But for some people motion can induce dizziness and even make them feel nauseous generally categorised as caused by vestibular disorders For others they may have conditions that make them have high anxiety or paranoia levels For them the motion on the page can be unsettling distracting and unnerving and can cause great discomfort So that is why I like to think of animations as a progressive enhancement I build a site without animations but keep them in mind and then add them later That way you naturally separate animations from the rest of the styling on the site That means it is an easy task to switch animations off on the site for people who don t want animations To do this we can add the animation related CSS to a separate style sheet We can then remove add that style sheet depending on preferences which can be done with JS and can even be added removed from the page server side using cookies etc Oh and if you do it right it is great for load speed performance on an animation heavy site as we can send less critical CSS Obviously having a button on the site or a settings page where people can turn animations off is the ideal scenario but there are other things to consider and less drastic measures that are a great start prefers reduced motionThe prefers reduced motion media query allows you to find out if a person visiting your site web app would like subtle no animations to be used That way you can switch animations on or off based on whether the media query matches or not animate the height by default animation transition height s ease we switch off the height animation for people who do not want animations media prefers reduced motion animation transition none SemanticsWe covered sectional elements and their semantics earlier This time lets talk about semantic elements that convey meaning within the document articles etc to really add clarity to your pages In lt summary gt the devil is in the lt detail gt sAh the puns have started you can tell I am getting tired writing this now But in all seriousness if you build an accordion and don t use lt summary gt and lt detail gt elements you are making things difficult for yourself lt summary gt and lt detail gt come with all the magic or most of it built in I think an example is the easiest way to demonstrate Usable in all modern browsers right out of the box without any JavaScript or CSS but we obviously want to add some CSS to make it prettier And you can even open and close it be adding or removing the open attribute on the lt detail gt element It also has all of the accessibility goodness built in in nearly every browserIn summary lt summary gt and lt detail gt are a top tier element pair lt time gt to get your act togetherMore puns I am sorry The lt time gt element allows you to account for the many many ways dates and times can be presented written This is great for SEO as computers can understand the lt time gt element It is also great for people who use AT as their AT can understand the lt time gt element and know how to announce the time correctly Overall I think the lt time gt element is great A typical example might be lt p gt You are cordially invited to my swanky dinner on lt time datetime gt August th lt time gt at my lake house lt p gt lt p gt We have hired a professional chef so food will be at lt time datetime gt pm lt time gt and then the string quartet are scheduled for lt time datetime gt pm lt time gt Don t forget that it takes lt time datetime PTHM gt hr min lt time gt to get here by helicopter darlings Kisses lt p gt Just an average Saturday night don t you think A lt button gt is a button This article I wrote covers this point perfectly prepare for some ranting if you read it They just won t learn ️ a button is a amp lt button amp gt Series Accessibility Rants InHuOfficial・May ・ min read ay webdev html discuss The lt dl gt lt dt gt and lt dd gt elements are a great threesome giggidy Yes I am immature but come one we are on number and I have been writing for what feels like days Anyway let me introduce you to the description list lt dl gt element and it s child elements lt dt gt and lt dd gt These elements are great for displaying a list of items that have corresponding definitions or related data Most people forget about these elements as the examples are quite boring lt dl gt lt dt gt Beast of Bodmin lt dt gt lt dd gt A large feline inhabiting Bodmin Moor lt dd gt lt dt gt Morgawr lt dt gt lt dd gt A sea serpent lt dd gt lt dt gt Owlman lt dt gt lt dd gt A giant owl like creature lt dd gt lt dl gt But they are actually really useful if you are dealing with showing grouped data to somebody They are especially useful if you are practicing the steps described in point Allow people to review informationWe can use description lists to repeat back information that people have entered for checking lt h gt Review your data lt h gt lt p gt Please review the data you entered in the previous step to ensure it is correct lt p gt lt dl gt lt dt gt First name lt dt gt lt dd gt Marc lt dd gt lt dt gt Last name lt dt gt lt dd gt Simmons lt dd gt lt dt gt Date of Birth lt dt gt lt dd gt lt time datetime gt May lt time gt lt dd gt lt dl gt Social MediaLet s make sure that our contributions to social media are as accessible as possible Add alt attributes to imagesI know de ja vu But not all social media is created equal Obviously if the social media platform you are posting to supports adding alt attributes then you should and you must But some platforms looking at you LinkedIn with your lack of alt descriptions on the App when you can add them on the main site unless they fixed that in the last few months and I missed it don t allow you to add them So if you find that you can t add a proper alt description here is a top tip At the end of your post update tweet whatever leave enough space for image my super alt description I would have added if the platform allowed it Nice and simple way to put inclusion back into your social media contributions or endless cat pictures I won t judge You can make your hashtags more accessible too Hey anyone from DEV still reading Pay close attention this one is so simple you will love it but it will mean a little bit of work from the DEV team to fix I am afraid CamelCaseYourHashtags Unfortunately some platforms don t allow you to do this still pointing at you DEV Why is it important Well first of all it stops mix ups I mean my favourite misread hashtag to this day is still susanalbumparty I mean how could people not read it as Su s Anal Bum Party But if they had used CamelCase then we wouldn t have had that problem now would we SusanAlbumParty But there is a more serious reason A reason related to accessibility that is meant to be what I am writing about People who use a screen reader will be able to understand the hashtag if it is more than one word If you try and use a screen reader on devbugsmash it completely mangles the word but DevBugSmash will be read correctly in most screen readers Limit your emoji use I am not saying don t use emojis but there are two reasons why you should limit their usage The first is probably the more obvious one AT and screen readers do not play well with emojis Too many can make a post unreadable But the second one that people tend to overlook is that people with cognitive impairments especially cognitive impairments that mean people cannot make abstract associations mean that emojis can be really confusing Put enough emojis in a tweet and someone can get overwhelmed and frustrated at all of these pictures that have no meaning to them So use emojis especially to grab attention for article releases etc Just don t litter every other word with them and don t start using emojis in place of words to reply to people you don t know Even people who can associate images can get really confused by the meaning of some emojis for tea for dessert could have very different meanings to some people Don t use images of codeNow this one will be controversial but hear me out If a site supports code blocks then use them No excuses it means they are accessible to AT It also means people can copy your code and play with it But what about social media channels where you can t use proper code blocks I am not saying don t do share images of text at all what I am saying is don t share images of code the way you are doing it now When sharing pictures of code created with or a similar service put your code into a GitHub Gist CodePen etc Then link to the code That way everyone can access your code and everyone also gets the benefit of being able to copy and paste your code too If you need the link in your social media post to lead to your article then put the code in the article itself If you can t do any of the above then rethink your post There is a way to make sure you can share the actual code as well You just have to find a workaround that works for you TablesWe have already covered not using tables for layout but what else do we need to know Know the basicsYou would be amazed how many tables exist that don t have a lt th gt element It is used to signify that a cell is a table header which on a simple table defaults to the column So the following is a table in it s simplest form lt table gt lt tr gt lt th gt Col Header lt th gt lt th gt Col Header lt th gt lt th gt Col Header lt th gt lt tr gt lt tr gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt tr gt lt tr gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt tr gt lt table gt But we can do so much better The scope attributeTo improve upon the previous example what if we wanted the first cell in a row to be the header for that row Well if we add the scope attribute in the right places we can achieve that and still have an accessible table almost lt table gt lt tr gt lt th scope col gt Col Header lt th gt lt th scope col gt Col Header lt th gt lt th scope col gt Col Header lt th gt lt tr gt lt tr gt lt th scope row gt Row Header lt th gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt tr gt lt tr gt lt th scope row gt Row Header lt th gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt tr gt lt table gt Don t forget a lt caption gt We are almost there with a basic table that is accessible We just need to add a lt caption gt to the table so that it is adequately described for Assistive Technology AT So let s see what it looks like with some super basic styling Great We have a basic table we can build upon lt thead gt lt tbody gt and lt tfoot gt Now we have a basic table it is time to add even more semantic information We have the lt thead gt element allowing us to define the table header think of it like lt header gt in a document We also have the lt tbody gt element which indicates where all of the table data is similar to lt main gt in a document Finally we have the lt tfoot gt element which indicates where a summary of the table rows in lt tbody gt are if applicable the lt tfoot gt element is similar to the lt footer gt element in a document lt table gt lt thead gt lt tr gt lt th scope col gt Col Header lt th gt lt th scope col gt Col Header lt th gt lt th scope col gt Col Header lt th gt lt tr gt lt thead gt lt tbody gt lt tr gt lt th scope row gt Row Header lt th gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt tr gt lt tr gt lt th scope row gt Row Header lt th gt lt td gt Row Col lt td gt lt td gt Row Col lt td gt lt tr gt lt tbody gt lt tfoot gt lt tr gt lt th scope row gt Summary lt th gt lt td gt Col summary lt td gt lt td gt Col summary lt td gt lt tr gt lt tfoot gt lt table gt For clarity the lt tfoot gt element is optional Oh and in case you have heard that a lt tfoot gt should come before lt tbody gt it is wrong and is the HTML way of doing things The order is always the same in HTML lt colgroup gt and lt col gt Now we are getting to the fun stuff It you have a complex table perhaps comparing product A product B and product C across multiple criteria then the lt colgroup gt element can be really useful What it does is allow us to group columns together creating an association between the two columns So lets say we were comparing products sold by JB toys ZA games and DD kids We want to compare the price and delivery times on a few products Normally this would be difficult but with lt col gt elements which represent a single column when setting up column groupings and lt colgroup gt elements which we use to group the columns this is actually possible What if you need to make a table row clickable Often the data in a table is not display only sometimes you need to be able to click on a row to edit it delete it etc This Stack Overflow answer I gave should cover most use cases even if it does need a rewrite another future article for the list answer re Make table row or cell be read by a table as clickable Nov PrewordApologies to OP there are a few things in this answer that may be misleading if the row is meant to take people to another page Firstly for options and below swap lt button gt s for lt a gt There is no need for an event listener or onclick… Open Full Answer TestingAccessibility testing is still not something we can fully automate That doesn t mean that automated testing isn t a good start Automated testingIt is very easy to overlook something when designing a component or an entire page Automated accessibility testing and accessibility linters are an essential first step in producing accessible products I won t beat around the bush here are the tools I use axe DevTools Web Accessibility Testing great for a quick and dirty test of a page eslint plugin jsx ay if I have to work with React it catches things early at least Accessibility Insights for Web hands down the best accessibility testing plugin you can use a bit heavy to learn I use this as my final automatic test That is it I have loads of situational ones such as Headings Map or even just running Lighthouse in devtools if I am working on performance as well the Accessibility section of a Lighthouse report is essentially the same as Axe DevTools it is just not as easy to use But honestly if you only use one automated tool Accessibility Insights for Web is amazing and that is from someone who isn t a big fan of Microsoft But I have some sad news automated accessibility tools only pick up around of errors automatically at best so Manual testing and knowledge are still requiredSorry peeps you have to learn this stuff have an accessibility tester QA on the team or pay someone like me to guide you The biggest trick is to have a checklist you could start by adding this article to your bookmarks as it covers a lot of the things to look for I will be writing several articles on testing techniques so I will leave it at this for now UsabilityTips that make your site easier to use for everyone White spaceWhen designing for mobile or touch white space or quiet space is really important Don t create screen sized clickable cards that mean there are no non interactive areas to place your finger to scroll This is particularly important for people with movement impairments such as people with Parkinson s Disease or Cerebral Palsy Reduced fine motor control results in a very frustrating experience from accidental clicks if you don t leave quiet space on the page Click Target SizeFor similar reasons tap target size of buttons controls etc is also really important Currently as WCAG is trying to reduce this requirement which feels like a step backwards it is required that tap targets are at least CSS pixels by CSS pixels A CSS pixel is quite complicated so generally on PC just use pixels on mobile it is slightly less so use about pixels Bear in mind those are minimums so I just say px by px on all devices as a general and much simplified rule Large minimum tap target sizes can be great for creativity when designing for mobile due to space constraints Don t disable zoom Have you ever put something like this into the lt head gt section of your page lt meta name viewport content width device width initial scale maximum scale user scalable no gt Well don t ever do it again ok I will give you a gentle slap on the wrist this time Disabling zoom is a massive accessibility no no A lot of people benefit from being able to enlarge parts of the page to see them in more detail A lot of people find zooming essential for reading a page on their mobile Just leave it alone don t try and stop people zooming Don t use timeouts or timers if you can avoid itHave you ever started filling in a multi page form had the phone ring come back to the form and then when you submit the current stage it tells you your session ended and you have to start again It might not have happened exactly like that but I am sure you have had an instance of being timed out on a web page before Now for some people this can be a real issue They may need time to double check information or they may be entering the information via sip and puff Oh you haven t heard of sip and puff watch this great video on YouTube about Jared and how he interacts with a computer If you must set a time limit on something make sure you set it very high to avoid excluding people Provide an alternative way to complete the task that isn t time dependent as well Let people know link behaviour If you are going to open a link in a new window with target frameName then tell people Oh and if that caught you by surprise yes you can open a link in a new Window with something other than target blank it can even be beneficial but I digress Anyway before I got distracted I have been writing for hours I was talking about telling people when a link opens in a new window or tab The simplest way to do this is to say it lt a href target blank gt Go to another site opens in new window lt a gt Obviously for most of you that will be a big no no as you don t want all those brackets cluttering up your design So how about using a few of the tricks we learned earlier and a little CSS to let people know What we do is use an SVG to indicate an external link there is no standard for this by the way but the icon used is reasonably well understood and position it just after our link with CSS Then we add some visually hidden text so that people who use a screen reader get the same information It is preferable for everything to open in the current window That way people can still use their back button but even I prefer to open external sites in a new tab so people don t leave my sites too early Use your own judgement on link opening behaviour just keep it as consistent as possible Don t forget the visited stateSuch an easy one to overlook The visited selector allows you to style visited links This can be really useful from an accessibility perspective as it helps people who have memory impairments remember where they have been before It is also nice for everybody else as a simple cue so they don t view things they have already seen or to find stuff they have seen previously You could use a similar technique to the new window indicator to add an eye icon or similar after a link There is no requirement to style the visited state it is just a good practice and one that I admittedly forget also I just added it to my checklist today due to writing this article Modals are complicatedModals dialogs are one of the most difficult things to get right Let s start with semantics the correct HTML element to use is a lt dialog gt element normally Next thing to note is that a true modal should have focus trapped inside of it while it is opened As you have hopefully started learning by now from this article screen readers follow their own set of rules and have unique ways of navigating For this reason simply intercepting the Tab key as of modal examples and libraries do is not sufficient to trap focus for a screen reader Our biggest challenge is that we have to hide all other content other than the modal from screen readers To achieve this it is normally best to have modals outside of the main content of the page which is technically incorrect but the best option in my opinion That way most of the work of hiding all other page content can be done with aria hidden true on the lt main gt lt aside gt lt footer gt elements etc This hides the majority of the content However we still have a problem that any elements that can receive focus buttons hyperlinks etc are still focusable and so ignore aria hidden For this we need to add tabindex to every focusable element on the page except for those within our modal This can be an interesting challenge as you have to account for contenteditable tabindex etc Once we have sorted that the modal should also be closable via the Esc key so don t forget a handler for that Finally when the modal closes focus should be returned to the button that opened it This is especially important if the modal is closed via the Esc key The document focus will be lost and will return to the top of the page if we don t complete this step Oh and don t forget we need to undo the tabindex that we set on all the focusable elements before we are done As you can imagine that is an awful lot to account for so that is another article I will be writing in the future For now I found an old partial answer I gave on Stack Overflow that covers these points but for a menu same principle I wouldn t use it in production but hopefully the code can give you some inspiration on how to achieve some of the above requirements answer re Two problems with tabbing an accessible pop out navigation I use some advice on Feb Question How can I make the close button ignore tabbing and only work with the spacebar or enter key Starting with this question as it is more complex I assume it is meant to be the same as how do I trap focus within my menu given the rest… Open Full Answer VideosVideo is one of the most important aspects of marketing nowadays As someone working in the digital space you will almost inevitably end up involved in video in one way or another So let s see if we can make our videos as accessible as possible Caption your videos add subtitles This doesn t just help people with disabilities It also helps people watching the video who speak a different language It is also essential now a high percentage of videos are watched on mute while people are doing other things the multi attention era There are many formats for Closed Captions but one that is nearly universally accepted is SubRip srt format files Creating srt files the manual way srt files have a format that is quite intuitive In fact you can create them in notepad with reasonable ease There are better ways to deal with creating closed captions for longer videos but for a short minute video you might as well do it manually The formatEach set of instruction is comprised of parts the subtitle number sequentially numbered starting at the start and end times for when the subtitle should appear on screenthe text to appear on screeneach part section is followed by a blank lineThe only bit that takes a little getting used to is how the times are formatted hrs mins secs msSo to display a subtitle at hour minutes seconds and milliseconds into a video for a duration of seconds would be as follows gt A more complete exampleSo the first few seconds of a file may look like the following gt InHu are amazing they really know their stuff gt They helped train our whole team on accessibility first thinking gt We reckon that we have saved a total of GBP in staff time just from one training sessionWhen you are done just save the file as a srt file and upload it along with your video Not too painful right oh and the timings don t have to be millisecond perfect the nearest ms is ok for most things Don t do it manuallyIf you have a video longer than minutes then YouTube is probably a good place to start When you upload a video they will process the subtitles for you automatically Having good audio will vastly improve the quality of the auto generated results Then you can either download the srt file and edit it manually or you can use YouTube studio to edit the captions in a more human friendly way For example you can scrub through the video and see your changes in real time Unfortunately I could not find an article that was up to date and well written on YouTube studio and Closed Captions I guess I have yet another post to add to the list of things to write With that being said once you find the Closed Captions editor it is quite straight forward to use so it should hopefully make sense without a tutorial Now you have a transcript too If you are posting the video to a blog then once you have created your closed captions file you can quickly create a transcript in HTML and add it below the video or as an accessible PDF or on a separate page your choice For transcripts of conversations with more than one participant the lt dl gt element from earlier is a great choice using the lt dt gt for the speaker and the lt dd gt for what they said Audio DescriptionWhile captions offer a much better experience for people who have a hearing impairment they don t offer much for people with a sight impairment not that they are the only people who enjoy audio described videos So when you create a video put time aside and some thought into creating an audio described version of your video The easiest way to explain audio description is that there is a narrator who describes the scene in between people talking Sometimes there is not enough time between people talking for audio description which is why I suggested thinking about it from the start You can design your script in a way where natural pauses can be extended You can also design your video in a way where footage can be made longer to provide an opportunity to fill in scene information etc For this reason you will sometimes need to create two different edits of the same video footage That way you can keep the pacing natural on the non audio described version and natural on the audio described version even with the extra speech needed For an example how about a frozen trailer that is audio described I don t want to spoil it for you but the last seconds made me laugh with the way the audio describer says things Seizure warningsAnother thing that often gets overlooked If your video contains flashing imagery then add a seizure warning to the start of the video It is also a good practice to add the timestamps of any sections that may cause a seizure to the video description on sites like YouTube etc or in a pinned comment That way people who may be affected by rapid flashes can still enjoy the video and skip the potentially dangerous parts Another option is that you could remove any rapid flashes and upload an alternative version The simplest way to do this is just to go to a black screen with the text rapidly flashing imagery removed showing or similar wording That way you can keep the sound in sync and coherent WAI ARIA WAI ARIA is a last resort The Web Accessibility Initiative Accessible Rich Internet Applications Suite WAI ARIA allows developers to add additional semantic information to HTML mark up The golden rule of WAI ARIA is it is a last resort You try every semantic HTML element you can think of first Inevitably there are times when a relevant element does not exist or you are constrained by the design decisions of others etc WAI ARIA is how you can tackle these scenarios WAI ARIA also allows for some things that HTML alone cannot achieve especially when it comes to dynamic content and complex applications Know your role The role attribute allows us to provide a role to an element with no semantic meaning a lt div gt or a lt span gt or it allows us to change the role of an existing element A lot of the role attributes should not really be needed in a modern page as they have direct HTML equivalents But just in case you inherit a poorly written project where changing elements is not possible they are still useful to know HTML Elementequivalent ARIA Role lt article gt role article lt aside gt role complementary lt footer gt role contentinfo lt form gt role form lt header gt role banner lt main gt role main lt nav gt role navigation lt section gt role region So with the above table the preference is for HTML elements falling back to WAI ARIA roles if you can t use the relevant HTML element role presentation is one to remember Think of this as a reset You use role presentation to remove semantic meaning from an element I mentioned a couple of times to use role presentation earlier such as very old legacy projects using lt table gt s for layout or lt img gt elements that are purely for decoration There are other use cases such as building tab components application menus etc It should be noted that role none is a replacement alternative synonym of role presentation However at this time support is poor The suggested usage if you want to start incorporating this into your mark up is advised as role none presentation Until implementations include sufficient support for role none web authors are advised to use the presentation role alone role presentation or redundantly as a fallback to the none role role none presentation Source noneI would just stick with role presentation for now it is an easy thing to do a search and replace on later even in gigantic projects Widgets and controlsIn the previous point you will possibly have noticed that role tends to map to sectional layout elements in the HTML standard WAI ARIA also has roles for controls as well These are particularly useful if you are designing a very complex custom component and there it is just impossible to use a native element A prime example might be a custom multi select control as that is one of the few native HTML elements that is very poor and hard to use where you are using tags for selected items A great example of how much thought needs to go into designing custom components is ay s article select your poison In fact it ended up as a two parter there was that much to cover so here is select your poison part Some of the roles that you can use to create widgets and custom controls are role button role checkbox role gridcell role link role menuitem role menuitemcheckbox role menuitemradio role option role progressbar role radio role scrollbar role searchbox role separator when focusable role slider role spinbutton role switch role tab role tabpanel role textbox role treeitem I will leave it to you to research them or maybe I will add just one more article to the list of future articles I think my content calendar is now full until the end of the year just from this article Beware role application is for people who like pain This one deserves special mention You might be thinking well I am building a web application so the role makes sense Oh no it isn t what it seems What role application does is that it gives full control to you the developer Sounds good right Oh no you do not realise how much support we get automatically from the browser Keyboard touch and mouse input is all in your hands Every key stroke needs to remapped to your desired behaviour Tab will no longer cycle between focusable items unless you tell it to Enter won t submit forms etc Honestly unless you are a megastar accessibility expert with years of experience and a decent team behind you probably best you just leave this one alone aria livelive regions are one of the things that WAI ARIA has that HTML doesn t They allow us to inform the screen reader of changes to a page important information etc We use the aria live attribute for this Although advice varies and once again this is too broad for a listicle like this one top tip is to only have one aria live region per page in most circumstances Then use an application wide messaging queue to add updates to an array Add these messages to the element that is marked with aria live with a slight delay between each This makes maintenance easier as you don t have conflicting live regions It also provides a more robust experience as multiple live regions all trying to announce at once doesn t tend to work well A final thing to note is that aria live has a couple of different settings They affect how forceful the announcements from the aria live region are aria live polite means that a screen reader will try and wait until the person using the screen reader is no longer reading anything aria live assertive is more aggressive It will interrupt the current item being read out if it can Use this sparingly aria expandedaria expanded is another common attribute You use this to let Assistive Tech AT know the whether a region is collapsed or expanded It is placed on the item that controls the expanding element That sounds complicated but it isn t If you had a lt button gt that opens a menu the lt button gt would have the aria expanded property on it to indicate whether the menu is expanded or collapsed So if the menu is currently open expanded the button would have aria expanded true If you clicked the button and the menu closed you would use JavaScript to change the attribute to aria expanded false or remove the attribute entirely to let AT know the change of state As a general rule if one element controls the opening and closing of another element it should have the aria expanded attribute on it to indicate the current state aria controls Wow you have no idea how long it has taken to get here When using aria expanded you will nearly always want to use it in conjunction with aria controls This signals to a screen reader when I am interacted with I will affect this other element on the page It builds the relationship between the two elements that cannot be determined by DOM structure alone The advantage for people who use AT is that their AT will often have a shortcut that allows them to jump straight to the affected element that is the target of aria controls The best tip for last My number one accessibility tip People not users Did you notice that throughout this whole article I never once use the word user to describe somebody words and I always say person with disability instead of disabled user or person who uses a screen reader instead of screen reader user Get rid of the word user from your vocabulary Yes I know it is difficult But user detaches you from the people who use your product Using people in it s place drills the message into your head that your work affects people You don t think it is a coincidence that I started this article talking about personas and ended talking about people first thinking do you Realising that your designs code etc has a direct impact of hundreds thousands or even millions of people makes a real difference to the way you approach development And if you don t think your actions impact that many people in people have a disability in people have a disability that has some impact on the way they interact with a computer and your digital products That is in people that are affected by poor accessibility People with disabilities are the single biggest minority group in the world and they are being ignored of websites have accessibility errors we can detect automatically and remember that only accounts for of all errors That means at least of websites have barriers that make them harder to use than they need to be Go on help yourself while you help othersWhy not be in the that build quality and inclusive products Why not be a leader in your field And don t forget accessibility knowledge and skills are becoming more and more important in job roles Especially if companies you apply to work at want to work on Government contracts In summary you can improve your job prospects and earnings potential by learning how to create accessible websites and web apps and you will have a positive impact on the world along the way Go on learn how to build accessible products help others while you help yourself Isn t that the definition of win win |
2021-07-30 12:30:46 |
海外TECH |
DEV Community |
5 Beginner Python Project Ideas |
https://dev.to/matthewtamyt/5-beginner-python-project-ideas-46hc
|
Beginner Python Project Ideas Python Project IdeasYou have probably been there I have Sitting on my chair and staring straight at my computer screen wondering what I should do with my little knowledge of a newly learnt coding language Well I am here to assist you Here are Python project ideas for beginners Of course this could be for intermediates and experts too It just depends to what extent you want your program to be Mad Libs GameThis was my first game ever created The simplest ever It requires you to know how to ask users to input values and store them as variables After multiple inputs you print a story out depending on the user s inputs Dead simple Reinforces your Python basics Here is a quick video by Mike Dane that teaches you how to do it if you need help YouTube Video The video is a short version of what you should expect in your game Good luck Here is what I did My Mad Libs Game Number Guessing GameThis is another simple yet addictive game to play The goal of the game is to ask the user for the upper bound limit of the available numbers then store a random number within that range Next the user would give guesses and the computer would give clues of whether that number is too much or too little Here is a video of a simplified version by Geek Tutorials YouTube Video Here is what I did My Number Guessing Game Dice Rolling SimulatorThe aim of the game is for the computer to simulate rounds of dice rolling between two players The computer would display the result of each round the give a winner at the end of rounds This is completely random and requires no human input at all Here is a video by Tutorial Spot YouTube Video And here is the source code if you need it Source Code HangmanThis is a classic It is a word guessing game where the player gives guesses of the letters inside the word Every time the player guess a wrong letter one limb is added to a picture of a human The goal is to guess the word before the human gets all his limbs I found this wonderful tutorial by Kite here YouTube Video However the video is quite fast so I recommend you to turn it to x the speed Here is the source code Source Code YouTube DownloaderThis is definitely the most challenging one of all So make sure you know how to do the first few before coming here At first glance this might seem very difficult But once you get started it is actually very straightforward So the aim is to enter your URL of the video then select your path where you want the video to be and choose your video quality Lastly just click Download If you need a bit of help my first tip would be to use PyTube My next tip would be to make it a GUI with Tkinter The best video tutorial I found was by Dream Developers here Video Tutorial Here is the source code of the project Source Code Comment Down BelowPlease feel free to comment down below what you think You can also give suggestions to more project ideas or elaborate on these ideas Have a nice discussion |
2021-07-30 12:11:26 |
海外TECH |
DEV Community |
Portfolio/Webpage Template with animations. |
https://dev.to/fradar/portfolio-webpage-template-with-animations-e87
|
Portfolio Webpage Template with animations This is a portfolio template with some very simple animations in CSS and HTML You can add whatever you want in here and fill in the the information where it says Your name here and the famous default text Lorem Ispium I hope you like it Check it out |
2021-07-30 12:11:11 |
Apple |
AppleInsider - Frontpage News |
'M1X' iMac delayed, iOS 15 Safari design struggles, and Apple's Q3 earnings on the AppleInsider podcast |
https://appleinsider.com/articles/21/07/30/m1x-imac-delayed-ios-15-safari-design-struggles-and-apples-q3-earnings-on-the-appleinsider-podcast?utm_medium=rss
|
x MX x iMac delayed iOS Safari design struggles and Apple x s Q earnings on the AppleInsider podcastOn the AppleInsider podcast this week your hosts discuss leaks surrounding the MX iMac and a release Apple s struggles to finalize Safari s design in iOS incredible Q earnings and more Apple exceeded all analyst expectations during its Q earnings call touting billion in total revenue That s a increase over last year CEO Tim Cook touted that iPad had its highest June quarter in nearly a decade Compounding that of Apple Watch buyers globally were new to the product Multiple rumors covering the Mac lineup came out this week including a claim that Apple s high end Apple Silicon iMac may not arrive until In addition leaker YuuKi AnS tweeted that the Mac Pro would sport an Intel chip missing Apple s deadline to transition all Macs to Apple Silicon Read more |
2021-07-30 12:51:28 |
海外TECH |
Engadget |
Engadget Podcast: Activision’s walkout and toxicity in gaming |
https://www.engadget.com/engadget-podcast-activision-blizzard-walkout-toxicity-123032466.html?src=rss
|
Engadget Podcast Activision s walkout and toxicity in gamingThis week Cherlynn and Devindra dive into the toxic mess at Activision Blizzard with Senior Editor Jessica Conditt California is suing the company over its frat boy culture something we ve seen at many gaming companies over the years What s actually going on and what does it mean for the gaming industry as a whole Tune in for our thoughts Also we chat about Facebook s metaverse ambitions some new chip plans for Intel and…Xbox Krispy Kreme donuts Listen below or subscribe on your podcast app of choice If you ve got suggestions or topics you d like covered on the show be sure to email us or drop a note in the comments And be sure to check out our other podcasts the Morning After and Engadget News Engadget ·Activision s walkout and toxicity in gamingSubscribe iTunesSpotifyPocket CastsStitcherGoogle PodcastsTopicsWhat s happening with the Activision Blizzard walkout Netflix might be getting into gaming Facebook has started mentioning “the metaverse a lot New Samsung S Pen for foldables Intel is doing some interesting marketing to keep up with its competition New earbuds from Nothing the company and Master amp Dynamic Krispy Kreme has an official Xbox donut Working on Pop culture picks Video livestreamCreditsHosts Cherlynn Low and Devindra HardawarGuest Jessica CondittProducer Ben EllmanLivestream producers Julio Barrientos Owen Davidoff Luke BrooksGraphics artists Luke Brooks Kyle MaackMusic Dale North and Terrence O Brien |
2021-07-30 12:30:32 |
海外TECH |
CodeProject Latest Articles |
GFX Forever: The Complete Guide to GFX for IoT |
https://www.codeproject.com/Articles/5302085/GFX-Forever-The-Complete-Guide-to-GFX-for-IoT
|
drawing |
2021-07-30 12:29:00 |
海外科学 |
NYT > Science |
C.D.C. Internal Report Calls Delta Variant as Contagious as Chickenpox |
https://www.nytimes.com/2021/07/30/health/covid-cdc-delta-masks.html
|
C D C Internal Report Calls Delta Variant as Contagious as ChickenpoxInfections in vaccinated Americans also may be as transmissible as those in unvaccinated people the document said and lead more often to severe illness |
2021-07-30 12:05:50 |
海外科学 |
NYT > Science |
Some Are Chasing Extra Vaccine Shots, While Scientists Debate |
https://www.nytimes.com/2021/07/29/science/covid-vaccine-booster-third-shot.html
|
ethical |
2021-07-30 12:01:45 |
金融 |
金融庁ホームページ |
麻生副総理兼財務大臣兼内閣府特命担当大臣記者会見の概要を公表しました。 |
https://www.fsa.go.jp/common/conference/index.html
|
内閣府特命担当大臣 |
2021-07-30 13:30:00 |
海外ニュース |
Japan Times latest articles |
Japan’s emergency expanded even as measure loses impact and support |
https://www.japantimes.co.jp/news/2021/07/30/national/expanded-covid-emergency/
|
Japan s emergency expanded even as measure loses impact and supportWith the latest measure the Suga administration well aware of the public s virus fatigue wants to buy time to vaccinate as many people as possible |
2021-07-30 21:23:43 |
海外ニュース |
Japan Times latest articles |
Olympic athletes are testing rules and taking a knee for Black Lives Matter |
https://www.japantimes.co.jp/sports/2021/07/30/olympics/summer-olympics/black-lives-matter-olympic-protests/
|
Olympic athletes are testing rules and taking a knee for Black Lives MatterThe pickup in demonstrations follows the International Olympic Committee s recent decision to relax decades old restrictions on athlete expression |
2021-07-30 21:39:23 |
海外ニュース |
Japan Times latest articles |
The U.S.-China downward spiral will only get worse |
https://www.japantimes.co.jp/opinion/2021/07/30/editorials/china-downward-spiral/
|
The U S China downward spiral will only get worseBeijing is dismayed that the Biden administration has not softened Donald Trump s hard line China policies and continues to hold it accountable for its misdeeds |
2021-07-30 21:24:57 |
海外ニュース |
Japan Times latest articles |
Fixing the global tech split |
https://www.japantimes.co.jp/opinion/2021/07/30/commentary/world-commentary/fixing-global-tech-split/
|
china |
2021-07-30 21:23:25 |
ビジネス |
ダイヤモンド・オンライン - 新着記事 |
来週(8/2~6)の日経平均株価の予想レンジは、 2万7000~2万8000円!“月初の買い”期待も方向感 はなく、1100社超の決算内容による個別物色が中心に - 来週の日経平均株価の予想レンジを発表! |
https://diamond.jp/articles/-/278322
|
来週の日経平均株価の予想レンジは、万万円“月初の買い期待も方向感はなく、社超の決算内容による個別物色が中心に来週の日経平均株価の予想レンジを発表来週の日経平均株価の予想レンジを発表投資情報サービス会社・ラカンリチェルカの村瀬智一さんが、今週の市況を振り返って分析。 |
2021-07-30 21:30:00 |
北海道 |
北海道新聞 |
道内一の合宿施設に 北見「アスリートステイズ」開業 |
https://www.hokkaido-np.co.jp/article/573146/
|
開業 |
2021-07-30 21:11:00 |
北海道 |
北海道新聞 |
総合馬術の日本は暫定3位 馬術・30日 |
https://www.hokkaido-np.co.jp/article/573145/
|
総合馬術 |
2021-07-30 21:11:00 |
北海道 |
北海道新聞 |
夏休み、函館市電に親しもう 10~12日 貸し切りや車庫見学の催し |
https://www.hokkaido-np.co.jp/article/573143/
|
函館市電 |
2021-07-30 21:07:00 |
北海道 |
北海道新聞 |
「勇気くれた」元相棒も涙 芽室出身・永原選手 バド女子ダブルス敗退 |
https://www.hokkaido-np.co.jp/article/573142/
|
東京五輪 |
2021-07-30 21:05:00 |
北海道 |
北海道新聞 |
音更産ニンジン収穫本格化 鮮度高く、全国へ出荷 |
https://www.hokkaido-np.co.jp/article/573130/
|
十勝管内 |
2021-07-30 21:03:33 |
北海道 |
北海道新聞 |
男子日本、白星なしA組最下位 ホッケー・30日 |
https://www.hokkaido-np.co.jp/article/573141/
|
白星 |
2021-07-30 21:03:00 |
海外TECH |
reddit |
Do you like/dislike Japanese beer and why? |
https://www.reddit.com/r/japanlife/comments/oujki0/do_you_likedislike_japanese_beer_and_why/
|
Do you like dislike Japanese beer and why I just cant get used to the Japanese beer Asahi Suntory name it they all taste the same slightly different but overall very bad on my tongue First few sips I am fine but can never finish it th or th sip and I feel very bad My Japanese colleague finds it interesting because they cant drink anything other than Japanese brands Do you like or dislike Japanese beer and why Would love to hear what folks in this community thinks submitted by u nexusultra to r japanlife link comments |
2021-07-30 12:22:57 |
コメント
コメントを投稿