@pikapikamart
Posted
Hey, glad to be back. Desktop layout's background-image right now is not occupying the whole right side like on the original, it is responsive though but at mobile breakpoint, there is an extra white-space underneath which the footer is occupying, it would be great to integrate the footer within the whole layout itself so that the background is not like cut off.
Some other suggestions would be:
- First, it would be great for you to add these as a base styling:
html {
box-sizing: border-box;
font-size: 100%;
}
*,
*::before,
*::after {
box-sizing: inherit;
}
Making all the elements use box-sizing
will really help you control an element's sizing so always apply them to all.
- Honestly, I would prefer to make use of the right-background-image inside the
.background
selector. If you try to look at the.image-host
, inspect and hover it on dev tools, you will see that the content's size is on the right whilst the content itself is on the left since you are changing thetop
andleft
property of it. It is hard for me to tell some css on this since the markup is a bit confusing :> - Now, a typical layout of a site looks like:
<header />
<main />
<footer />
This way, all element that has content are inside landmark elements and on this , I would prefer as well having a header
and main
since it make sense on this kind of layout.
- Website-logo
img
should be visible in a website since it is one of the meaningful elements on a site so using::before
on it is not really great. Make it animg
with a properalt
value inside the supposedheader
if you will make it that way. - The
form
works but it currently lacks an informative way of telling a user has an error. The error-message is only seen visually. A pseudocode of a properform
looks like when it has an error:
if ( input is wrong )
input.setAttribute("aria-invalid", "true");
input.setAttribute("aria-describedBy", id of the error-message);
else
input.removeAttribute("aria-invalid");
input.removeAttribute("aria-describedBy");
The error-message element should have an id
attribute which is referenced by the aria-describedBy
attribute on the input
element. By doing that, your user will know that the input
is wrong because of aria-invalid
and they will know what kind of error they made because of the aria-describedBy
. You can take a look of this simple snippet of mine see the javascript and the html which are important.
- If you remove the
outline
property of an element, make sure to add another custom visual indicator on the element's:focus-visible
state. Try using tab on your keyboard to navigate the site, you will have a hard time since there is no indication on where you at. - You can use
ul
on those logos since those are "list" of logos right and each of them should have a properalt
which the value is the name of the company I think likealt="spotify"
. - Lastly, just the mobile state like what I said earlier about the extra white-spacing.
Aside from those, really great job on this one.
Marked as helpful
@KristaCalleja
Posted
@pikamart Thanks so much for this! I will be working on it to improve!
@KristaCalleja
Posted
@pikamart Hi again... can you recommend to me your best resource for learning ARIA, and I don't mean just the documentation, bite-sized resources for learning. Thank you!
@pikapikamart
Posted
@KristaCalleja Hi, well to be honest I don't really have a resource about it, I just google things out like for example, "accessible dropdowns" and I try to visit maybe 2-3 links about it and compare each approach and see what is the best, aria
sometimes are include and sometimes is not because you don't really need to have aria
as long as you have semantic html markup.
But for forms, you would really need to add those to make bridges if there are errors to be stated for the users.
Yeah, I just checked my bookmarks and there are no links regarding other accessibility, sorry for that. But just search up some with "accessible" word in your search thing, best site is from w3.org
Marked as helpful