---
title: "Michael Richins (@MrGrigri) | Hashnode"
description: "Full-Stack Designer. Read the latest articles by Michael Richins on Hashnode."
url: "https://hashnode.com/@MrGrigri"
---

@MrGrigri

# Michael Richins

@MrGrigri · Provo, Utah · Joined May 2016

Full-Stack Designer

[Website](http://richkode.com/)

## Comments

[Thank you for this great summary. There is one thing that tripped me up whilst creating an application that was embedded inside another site within an iFrame. If a user disables Third Party Cookies, then the Web Storage API is not accessible. Even though it's not a cookie, and that the parent site cannot access the cookies inside of an iframe, it's still blocked.](https://hashnode.com/posts/the-web-storage-api/62a64b35165482d2b3eef0c4/comment/62a89d3c0baf4306d9493d60)

Comment · Article · Jun 14, 2022 · [The Web Storage API](https://hashnode.com/posts/the-web-storage-api/62a64b35165482d2b3eef0c4)

[Here is my solution. hopefully, it's self-explanatory. I've created a class that accepts three parameters; a node list of select elements, the excluded option value, and a max number of occurrences. var selects = document.querySelectorAll('\[js-select\]'); var optionCheck = new OptionCheck(selects, 'Ppl', 2); At startup and after every change event, I set values and then check values. If there are as many selected options as there are the max number of occurrences, then the other select's option is disabled.](https://hashnode.com/forums/thread/how-do-i-limit-the-amount-of-times-the-same-option-is-selected-within-a-group-of-dropdown-lists/comment/5b897264c4570e1451ec06f5)

Comment · Thread · Aug 31, 2018 · 1 · [How do I limit the amount of times the same option is selected within a group of dropdown lists?](https://hashnode.com/forums/thread/how-do-i-limit-the-amount-of-times-the-same-option-is-selected-within-a-group-of-dropdown-lists)

[I really like Angular's approach with ViewEncapsulation. The native option creates a Shadow DOM; which isn't widely supported yet. The emulated option creates a unique attribute that is attached to everything associated with that component/directive. This is a good article to read on the subject A good way to avoid class collisions would be to use the BEM CSS class naming convention.](https://hashnode.com/forums/thread/css-modules-explain-like-i-am-five/comment/5995cae274a7b83e3925d858)

Comment · Thread · Aug 17, 2017 · [CSS Modules — Explain like I am five!](https://hashnode.com/forums/thread/css-modules-explain-like-i-am-five)

[Checking caniuse, it appears that they do support position: sticky. And only Edge and IE don't support it.](https://hashnode.com/forums/thread/whats-stopping-google-chrome-and-firefox-from-implementing-sticky-position-css-property/comment/58e0192874b62a9601213b06)

Comment · Thread · Apr 1, 2017 · 2 · [What's stopping Google Chrome and Firefox from implementing sticky position CSS property?](https://hashnode.com/forums/thread/whats-stopping-google-chrome-and-firefox-from-implementing-sticky-position-css-property)

[I would agree with one caveat; that the arguments must include graphable data. You cannot say, I make new projects faster. You should say, I increased the production time of new projects by 40% by creating a company-wide design framework.](https://hashnode.com/forums/thread/what-should-a-software-developer-do-in-order-to-earn-higher-salary-in-the-company/comment/583e99191b2c30a96bdb0459#reply-5840811cb0dc29ec076270fb)

Reply · Thread · Dec 1, 2016 · 1 · [What should a software developer do in order to earn higher salary in the company?](https://hashnode.com/forums/thread/what-should-a-software-developer-do-in-order-to-earn-higher-salary-in-the-company)

[@magalielinda, I still don't believe that they're supported enough to use in production, and I don't believe that there is a solid method of implementing CSS variables into any pre-processor. What I mean by run-time changes, is that the CSS variables are stored in memory. It will only read the stylesheet once and every time the variable is changed in JavaScript, it only changes the reference and doesn't rewrite the CSS file. Imagine you have a website that the main color scheme is controlled by the user. To maintain the separation of concerns between HTML, JavaScript, and CSS, you'd be better off setting a CSS variable in the stylesheet that the whole scheme was built upon, and only let JavaScript change that one color value. The whole stylesheet would reflect that change at run-time, not compile time. Mainly because the browser cannot write to the CSS file and change it. You don't have to have separate stylesheets for each set color theme, they could literally pick any color. I hope this makes sense.](https://hashnode.com/forums/thread/who-here-uses-css-variables-and-stopped-using-preprocessors/comment/5813ce4cd609d4112cb286eb#reply-58190317c055bbfb46d87e48)

Reply · Thread · Nov 1, 2016 · 1 · [Who here uses CSS variables and stopped using preprocessors?](https://hashnode.com/forums/thread/who-here-uses-css-variables-and-stopped-using-preprocessors)

[I believe that native CSS variables are going to revolutionize the styling industry. The only thing holding us back is IE and Edge. We must accept that IE 11 will never support them, and Windows has stated that IE 11 will be around for as long as they support Windows 10. "Internet Explorer 11 is the last version of Internet Explorer, and will continue to receive security updates, compatibility fixes, and technical support on Windows 7, Windows 8.1, and Windows 10." I also believe that CSS preprocessors like SCSS, Less, and Stylus are going to continue to exist as well. Mainly because of functions, mixins, and partials. However, there is no need to fret, because preprocessors can still use native CSS variables. I created a quick Codepen illustrating the uses of CSS variables. If you have a 4K monitor without scaling, you'll be able to see the desired effect. The fantastic thing about CSS variables is that they are compiled at runtime. That means that if you change a CSS variable in JavaScript, it'll cascade in real-time. Here is another fun Codepen that uses RxJS, RxCSS, and native CSS variables.](https://hashnode.com/forums/thread/who-here-uses-css-variables-and-stopped-using-preprocessors/comment/5813ce4cd609d4112cb286eb)

Comment · Thread · Oct 28, 2016 · 1 · [Who here uses CSS variables and stopped using preprocessors?](https://hashnode.com/forums/thread/who-here-uses-css-variables-and-stopped-using-preprocessors)

[I would use FontForge found here. It's a free open-source tool for editing fonts. Font icons use unicode characters that are beyond the normal character range, this makes it difficult to view all icons in one place.](https://hashnode.com/forums/thread/how-can-i-have-a-look-at-all-the-icons-in-the-woff-file/comment/577e6f81fcb4d586db1945d0)

Comment · Thread · Jul 7, 2016 · 1 · [How can I have a look at all the icons in the WOFF file?](https://hashnode.com/forums/thread/how-can-i-have-a-look-at-all-the-icons-in-the-woff-file)

[The best way to overcome this is to use aria accessible features here. This will provide accessibility options for screen readers or voice-over programs.](https://hashnode.com/posts/really-responsive-tables-using-css3-flexbox/56ab0b76960088c21db4d82c/comment/56ac95cbf28f9d9d99e3a78e#reply-57338fb3ed7f46c535352f34)

Reply · Article · May 11, 2016 · 1 · [Really Responsive Tables using CSS3 Flexbox](https://hashnode.com/posts/really-responsive-tables-using-css3-flexbox/56ab0b76960088c21db4d82c)
