| 21. 3. 2023 | When is :focus-visible visible? – bitsofco.de
|
| 22. 2. 2023 | From Ghost to 11ty – bitsofco.de
|
| 25. 10. 2021 | Web Performance Metrics Cheatsheet – bitsofco.de
|
| 25. 10. 2021 | Web Performance Metrics Cheatsheet – bitsofco.de
|
| 18. 6. 2021 | Setting up a Decentralised Website (ENS + IPFS = dWeb) – bitsofco.de
|
| 18. 6. 2021 | Setting up a Decentralised Website (ENS + IPFS = dWeb) – bitsofco.de
|
| 14. 12. 2020 | Highlights from Chrome Dev Summit 2020 – bitsofco.de
|
| 14. 12. 2020 | Highlights from Chrome Dev Summit 2020 – bitsofco.de
|
| 28. 4. 2020 | What I wish I knew about React – bitsofco.de
|
| 28. 4. 2020 | What I wish I knew about React – bitsofco.de
|
| 26. 11. 2019 | How I created 488 "live images" – bitsofco.de
|
| 26. 11. 2019 | How I created 488 "live images" – bitsofco.de
|
| 18. 11. 2019 | Highlights from Chrome Dev Summit 2019 – bitsofco.de
|
| 18. 11. 2019 | Highlights from Chrome Dev Summit 2019 – bitsofco.de
|
| 28. 10. 2019 | How to use Puppeteer in a Netlify (AWS Lambda) function – bitsofco.de
|
| 28. 10. 2019 | How to use Puppeteer in a Netlify (AWS Lambda) function – bitsofco.de
|
| 3. 9. 2019 | Calling smart contract functions using web3.js - call() vs send() – bitsofco.de
|
| 3. 9. 2019 | Calling smart contract functions using web3.js - call() vs send() – bitsofco.de
|
| 27. 8. 2019 | Solidity function visibility, explained – bitsofco.de
|
| 27. 8. 2019 | Solidity function visibility, explained – bitsofco.de
|
| 28. 5. 2019 | Your first performance budget with Lighthouse – bitsofco.de
|
| 28. 5. 2019 | Your first performance budget with Lighthouse – bitsofco.de
|
| 12. 3. 2019 | Removing duplicate objects from an Array (is hard) – bitsofco.de
|
| 12. 3. 2019 | Removing duplicate objects from an Array (is hard) – bitsofco.de
|
| 12. 2. 2019 | Tips for making interactive elements accessible on mobile devices – bitsofco.de
|
| 12. 2. 2019 | Tips for making interactive elements accessible on mobile devices – bitsofco.de
|
| 5. 2. 2019 | Revisiting the abbr element – bitsofco.de
|
| 5. 2. 2019 | Revisiting the abbr element – bitsofco.de
|
| 29. 1. 2019 | What self.skipWaiting() does to the service worker lifecycle – bitsofco.de
|
| 29. 1. 2019 | What self.skipWaiting() does to the service worker lifecycle – bitsofco.de
|
| 22. 1. 2019 | What is tree shaking and how does it work? – bitsofco.de
|
| 22. 1. 2019 | What is tree shaking and how does it work? – bitsofco.de
|
| 16. 1. 2019 | Use the :lang pseudo-class over the lang attribute selector for language-specific styles – bitsofco.de
|
| 16. 1. 2019 | Use the :lang pseudo-class over the lang attribute selector for language-specific styles – bitsofco.de
|
| 25. 12. 2018 | A Siri Shortcut to Generate PWA Icons and Web App Manifest – bitsofco.de
|
| 24. 12. 2018 | Understanding the Virtual DOM – bitsofco.de
|
| 21. 12. 2018 | My CSS Reset/Base – bitsofco.de
|
| 20. 12. 2018 | Making the abbr element work for touchscreen, keyboard, and mouse – bitsofco.de
|
| 19. 12. 2018 | Handling broken images with the service worker – bitsofco.de
|
| 18. 12. 2018 | A one-line solution to highlighting search matches – bitsofco.de
|
| 17. 12. 2018 | There’s no reason to use pointer-events for HTML elements – bitsofco.de
|
| 14. 12. 2018 | Using aria-live – bitsofco.de
|
| 13. 12. 2018 | Cache API 101 – bitsofco.de
|
| 12. 12. 2018 | The visibility property isn’t just about visibility – bitsofco.de
|
| 11. 12. 2018 | When do the :hover, :focus, and :active pseudo-classes apply? – bitsofco.de
|
| 10. 12. 2018 | What is the Shadow DOM? – bitsofco.de
|
| 5. 12. 2018 | Going Offline First (Video Series) – bitsofco.de
|
| 30. 11. 2018 | A look at CSS Resets in 2018 – bitsofco.de
|
| 29. 11. 2018 | How and when to use the tabindex attribute – bitsofco.de
|
| 28. 11. 2018 | Everything about CSS environment variables – bitsofco.de
|
| 27. 11. 2018 | Git aliases for lazy developers – bitsofco.de
|
| 26. 11. 2018 | What, exactly, is the DOM? – bitsofco.de
|
| 23. 11. 2018 | How to upload a screenshot from Puppeteer to Cloudinary – bitsofco.de
|
| 22. 11. 2018 | Using a headless browser to capture page screenshots – bitsofco.de
|
| 21. 11. 2018 | Why and how to use WebP images today – bitsofco.de
|
| 20. 11. 2018 | Web workers vs Service workers vs Worklets – bitsofco.de
|
| 19. 11. 2018 | You might not need a loop – bitsofco.de
|
| 16. 11. 2018 | Highlights from Chrome Dev Summit 2018 – bitsofco.de
|
| 15. 11. 2018 | What is First Input Delay? – bitsofco.de
|
| 14. 11. 2018 | Learning to write again – bitsofco.de
|
| 9. 10. 2018 | Understanding the difference between grid-template and grid-auto – bitsofco.de
|
| 23. 5. 2018 | [Smashing Magazine] Creating The Feature Queries Manager DevTools Extension – bitsofco.de
|
| 27. 3. 2018 | How display: contents; Works – bitsofco.de
|
| 23. 1. 2018 | Recreating the GitHub Contribution Graph with CSS Grid Layout – bitsofco.de
|
| 8. 1. 2018 | What’s New in HTML 5.2? – bitsofco.de
|
| 23. 11. 2017 | Localisation and Translation on the Web – bitsofco.de
|
| 18. 9. 2017 | Web Push Notifications with Firebase (Video Series) – bitsofco.de
|
| 15. 8. 2017 | Accessibility Testing with pa11y – bitsofco.de
|
| 4. 7. 2017 | What's the Deal with Collapsible Margins? – bitsofco.de
|
| 6. 6. 2017 | How the minmax() Function Works – bitsofco.de
|
| 3. 5. 2017 | CSS Animations vs the Web Animations API: A Case Study – bitsofco.de
|
| 26. 4. 2017 | How I Animated the bitsofcode Logo with CSS – bitsofco.de
|
| 13. 4. 2017 | Asynchronous Functions 101 – bitsofco.de
|
| 27. 3. 2017 | Redesigning bitsofcode – bitsofco.de
|
| 14. 3. 2017 | Making Alix, a Chrome Extension for Linting HTML – bitsofco.de
|
| 7. 3. 2017 | Linting HTML using CSS – bitsofco.de
|
| 28. 2. 2017 | Asynchronous vs Deferred JavaScript – bitsofco.de
|
| 21. 2. 2017 | "What's the typeof null?", and other confusing JavaScript Types – bitsofco.de
|
| 14. 2. 2017 | Optimising GIFs for the Web – bitsofco.de
|
| 7. 2. 2017 | CSS Grid Layout Terminology, Explained – bitsofco.de
|
| 31. 1. 2017 | How calc() Works – bitsofco.de
|
| 24. 1. 2017 | Rules for Using ARIA in HTML – bitsofco.de
|
| 17. 1. 2017 | Understanding the Critical Rendering Path – bitsofco.de
|
| 10. 1. 2017 | 3 New CSS Features to Learn in 2017 – bitsofco.de
|
| 20. 12. 2016 | Making a Polymer Element for CanIUse Embed – bitsofco.de
|
| 13. 12. 2016 | An Overview of Client-Side Storage – bitsofco.de
|
| 6. 12. 2016 | Document Outlines in HTML 5.1 – bitsofco.de
|
| 29. 11. 2016 | Making "Blue Beanie Me" – bitsofco.de
|
| 22. 11. 2016 | Highlights from Chrome Dev Summit 2016 – bitsofco.de
|
| 15. 11. 2016 | for..in versus for..of Loops – bitsofco.de
|
| 8. 11. 2016 | Challenge - Recreating the iTunes Library – bitsofco.de
|
| 1. 11. 2016 | Tools for Developing Accessible Websites – bitsofco.de
|
| 25. 10. 2016 | Push Notifications on the Web (Building a PWA, Part 3) – bitsofco.de
|
| 18. 10. 2016 | "Instant Loading" with IndexedDB (Building a PWA, Part 2) – bitsofco.de
|
| 11. 10. 2016 | “Offline First” with Service Worker (Building a PWA, Part 1) – bitsofco.de
|
| 4. 10. 2016 | Alternative Text and Images – bitsofco.de
|
| 27. 9. 2016 | Variable and Function Hoisting in ES2015 – bitsofco.de
|
| 20. 9. 2016 | The New System Font Stack? – bitsofco.de
|
| 13. 9. 2016 | JavaScript Promises 102 - The 4 Promise Methods – bitsofco.de
|
| 6. 9. 2016 | nth-child vs nth-of-type – bitsofco.de
|
| 23. 8. 2016 | Toast.js, a Library for Toast messages – bitsofco.de
|
| 16. 8. 2016 | Making botsofcode - An Introduction to Twitter Bots – bitsofco.de
|
| 9. 8. 2016 | JavaScript Array Methods - Mutator Methods – bitsofco.de
|
| 2. 8. 2016 | Creating An Accessible Modal Dialog – bitsofco.de
|
| 26. 7. 2016 | The Background Properties – bitsofco.de
|
| 19. 7. 2016 | The Service Worker Lifecycle – bitsofco.de
|
| 12. 7. 2016 | JavaScript Promises 101 – bitsofco.de
|
| 5. 7. 2016 | The :target Trick – bitsofco.de
|
| 28. 6. 2016 | All the Generic CSS Data Types – bitsofco.de
|
| 21. 6. 2016 | Realtime Form Validation – bitsofco.de
|
| 14. 6. 2016 | Form Validation Techniques – bitsofco.de
|
| 5. 6. 2016 | Anchors vs Buttons – bitsofco.de
|
| 31. 5. 2016 | Making Messenger Hunt - An Introduction to Messenger Bots – bitsofco.de
|
| 24. 5. 2016 | The box-shadow Property – bitsofco.de
|
| 17. 5. 2016 | Using Jekyll for Rapid CSS Testing – bitsofco.de
|
| 10. 5. 2016 | Setting up a Basic Service Worker – bitsofco.de
|
| 26. 4. 2016 | Making IFrames Responsive – bitsofco.de
|
| 19. 4. 2016 | Initial, Inherit, Unset, and Revert – bitsofco.de
|
| 12. 4. 2016 | A Gulp Workflow for Building HTML Email – bitsofco.de
|
| 5. 4. 2016 | The Problem with iOS Safari and shrink-to-fit – bitsofco.de
|
| 29. 3. 2016 | The Holy Grail Layout with CSS Grid – bitsofco.de
|
| 22. 3. 2016 | Better Detection and Analytics for Opera Browsers – bitsofco.de
|
| 15. 3. 2016 | On :not and Specificity – bitsofco.de
|
| 8. 3. 2016 | Styling Broken Images – bitsofco.de
|
| 1. 3. 2016 | Challenge - Recreating Clear with Pure JavaScript – bitsofco.de
|
| 23. 2. 2016 | 6 Reasons to Start Using Flexbox – bitsofco.de
|
| 16. 2. 2016 | Making KhaledBot - An Introduction to Slack Bots – bitsofco.de
|
| 9. 2. 2016 | The One CSS Feature I Really Want – bitsofco.de
|
| 2. 2. 2016 | Responsive Images - The srcset and sizes Attributes – bitsofco.de
|
| 26. 1. 2016 | Creating an Embed for CanIUse – bitsofco.de
|
| 19. 1. 2016 | The Effect of Importance and Origin on CSS Specificity – bitsofco.de
|
| 12. 1. 2016 | Labelling Form Elements – bitsofco.de
|
| 22. 12. 2015 | WTF Opera Mini?! – bitsofco.de
|
| 15. 12. 2015 | Controlling Typography in CSS – bitsofco.de
|
| 8. 12. 2015 | The vertical-align Property – bitsofco.de
|
| 1. 12. 2015 | Tic Tac Toe (Revisited) – bitsofco.de
|
| 24. 11. 2015 | 3 Useful and Reusable SASS Mixins – bitsofco.de
|
| 17. 11. 2015 | From Jekyll to Ghost – bitsofco.de
|
| 10. 11. 2015 | Using System Fonts in the Browser – bitsofco.de
|
| 3. 11. 2015 | Understanding border-image – bitsofco.de
|
| 27. 10. 2015 | How Positioning CSS Properties Interact – bitsofco.de
|
| 20. 10. 2015 | How z-index Works – bitsofco.de
|
| 13. 10. 2015 | HTML For Screen Readers - Labelling Elements – bitsofco.de
|
| 6. 10. 2015 | Using Heading Elements to Create a Document Outline – bitsofco.de
|
| 29. 9. 2015 | Sectioning Content in HTML5 - div or section or article? – bitsofco.de
|
| 15. 9. 2015 | The Style Element – bitsofco.de
|
| 8. 9. 2015 | InstaChrome - A Google Chrome New Tab Extension – bitsofco.de
|
| 1. 9. 2015 | Alternatives to Floating – bitsofco.de
|
| 25. 8. 2015 | Custom, Scriptless, and Trackable Social Media Share Buttons – bitsofco.de
|
| 18. 8. 2015 | Working with Colour in CSS – bitsofco.de
|
| 11. 8. 2015 | How Floating Works – bitsofco.de
|
| 4. 8. 2015 | Building Designer News for Pebble – bitsofco.de
|
| 28. 7. 2015 | A Simple Gulp Workflow – bitsofco.de
|
| 21. 7. 2015 | Hiding Elements With CSS – bitsofco.de
|
| 14. 7. 2015 | jQuery UI Events Cheatsheet – bitsofco.de
|
| 7. 7. 2015 | A More Accessible Multi-Level Dropdown Navigation – bitsofco.de
|
| 30. 6. 2015 | Controlling The Box Model – bitsofco.de
|
| 23. 6. 2015 | Pseudo-Classes, Pseudo-Elements, and Colon Notation – bitsofco.de
|
| 16. 6. 2015 | Designer News Clone (Part 2) - Implementing Firebase Security – bitsofco.de
|
| 9. 6. 2015 | 5 Lesser Used CSS Selectors – bitsofco.de
|
| 6. 6. 2015 | The Accessibility Cheatsheet – bitsofco.de
|
| 26. 5. 2015 | Viewport vs Percentage Units – bitsofco.de
|
| 19. 5. 2015 | Building a Designer News Clone with AngularJS and Firebase – bitsofco.de
|
| 12. 5. 2015 | CSS Vendor Prefixes – bitsofco.de
|
| 5. 5. 2015 | Working With Document Alternates – bitsofco.de
|
| 28. 4. 2015 | FormHack.io - A Hackable CSS Form Reset – bitsofco.de
|
| 21. 4. 2015 | All About Favicons (And Touch Icons) – bitsofco.de
|
| 14. 4. 2015 | Payback - An Instagram Based Web App – bitsofco.de
|
| 4. 4. 2015 | CSS Font Sizing – bitsofco.de
|
| 31. 3. 2015 | Responsive Design With Viewport Control – bitsofco.de
|
| 24. 3. 2015 | Tic Tac Toe – bitsofco.de
|
| 17. 3. 2015 | Meta Charset – bitsofco.de
|
| 16. 3. 2015 | The Value of Blogging – bitsofco.de
|
| 10. 3. 2015 | Doctype – bitsofco.de
|
| 3. 3. 2015 | Hello, World! – bitsofco.de |