104 Chrome DevTools Tips
-
Emulate color schemes
In CSS, you can use the prefers-color-scheme media feature (docs) to detect if the user prefers usin...
Read more
Categories:
Supported by:
-
Test your PWA protocol handlers
Progressive Web Apps (PWA) can register themselves to handle URIs with pre-defined or custom protoco...
Read more
Categories:
Supported by:
-
Emulate idle detection states
The Idle Detection API is useful for web developers to detect when the user isn't interacting with t...
Read more
Categories:
Supported by:
-
List all supported console functions
You've probably already used console.log() in your code to print debugging values to the Console too...
Read more
Categories:
Supported by:
-
Hide or pin the information tooltip while inspecting page elements
When selecting elements from the page using the inspect tool, the hovered elements get highlighted,...
Read more
Categories:
Supported by:
-
Customize keyboard shortcuts
DevTools comes with tons of keyboard shortcuts. Some are well known (like F12 to open DevTools), but...
Read more
Categories:
Supported by:
-
Re-use scripts as snippets
The Console is great to write short JavaScript expressions that read from the document or manipulate...
Read more
Categories:
Supported by:
-
Simulate different devices and screen sizes
There is a great mode in all major browser developer tools that makes it really easy to test your we...
Read more
Categories:
Supported by:
-
Ignore JavaScript code to ease debugging
Debugging JavaScript can quickly get out of hand when you have a lot of code and many functions that...
Read more
Categories:
Supported by:
-
Edit JavaScript functions while debugging to test a quick fix
Sometimes, when debugging JavaScript code in DevTools, you may want to test a quick change and see w...
Read more
Categories:
Supported by:
-
Install or create extensions to customize DevTools
There's a lot of tools in DevTools already, probably more than you use. But in some cases, you may n...
Read more
Categories:
Supported by:
-
Use DevTools in another language
If you want to use DevTools in another language than English, you can do it across all major browser...
Read more
Categories:
Supported by:
-
Access results from recent Console evaluations
Imagine you evaluate a long expression like $$('*').map(el => Object.values(el.attributes).map(at...
Read more
Categories:
Supported by:
-
Simulate a different latitude/longitude geolocation
If your website has features that depend on the geographic location of your users, you can test thes...
Read more
Categories:
Supported by:
-
Find inactive CSS styles
Sometimes we write CSS code that's entirely valid but has absolutely no effect at all, and this can...
Read more
Categories:
Supported by:
-
Get the recently selected DOM nodes in the console
If you type $0 in the Console tool, in any browser, the currently selected DOM node is returned. Thi...
Read more
Categories:
Supported by:
-
Inspect CSS animations
Modern browser DevTools provide a handy tool to inspect and modify CSS animations, CSS transitions,...
Read more
Categories:
Supported by:
-
Remove annoying page overlays and other elements
A lot of websites these days get covered with overlays and crammed with lots of ads and other things...
Read more
Categories:
Supported by:
-
Copy CSS selector of an element
Sometimes we need to uniquely identify an element that lacks an identifier, so that it can be refere...
Read more
Categories:
Supported by:
-
Copy an element's JavaScript path
JavaScript often needs references to DOM nodes on the page. Getting a reference is sometimes easy wi...
Read more
Categories:
Supported by:
-
Fix color contrast issues using the element tooltip
There are multiple ways to detect and fix color contrast issues with DevTools, but here is a nice on...
Read more
Categories:
Supported by:
-
Empty the cache and hard refresh
Here is a nice tip to quickly empty your cache and refresh the page, in order to test new code chang...
Read more
Categories:
Supported by:
-
Edit an element's attributes and tag name with the keyboard
Using the keyboard can be faster than using a mouse in certain cases (and for some people). One such...
Read more
Categories:
Supported by:
-
Create your own simulated devices
You can simulate various different devices from DevTools, to get an idea of how your webpage might r...
Read more
Categories:
Supported by:
-
Discover all the tools
DevTools is confusing! There's so much functionality packed in such a small UI. Did you know that Ch...
Read more
Categories:
Supported by:
-
Copy an elements styles
You can extract all the styles of an element in one go by using the Copy styles feature.
No need to...
Read more
Categories:
Supported by:
-
Use document.designMode to spell check your webpage
https://twitter.com/AmeliasBrain/status/1521146127327801345...
Read more
Categories:
Supported by:
-
Visualize and debug CSS cascade layers
CSS cascade layers is a CSS feature that allows web developers to define their CSS styles in multipl...
Read more
Categories:
Supported by:
-
Take a screenshot of part of a webpage from the command menu
The Command menu in Edge and Chrome is great. Here is one more thing it can do:
https://twitter.com/...
Read more
Categories:
Supported by:
-
Quickly reference nodes, expressions, and react components in the console
https://twitter.com/ChatterboxDev/status/1506299424712142864
Also learn more about getting the selec...
Read more
Categories:
Supported by:
-
Start your HTML and CSS prototypes in the browser directly
Sometimes I need a blank canvas to prototype an idea with HTML and CSS. Something outside of the web...
Read more
Categories:
Supported by:
-
Fix low color contrast issues
With DevTools you can detect low color contrast issues which is great. But DevTools in Chrome, Polyp...
Read more
Categories:
Supported by:
-
Debug popups that appear on hover using the debugger statement
In Debug popups that appear on hover using JS we described how to pause the debugger to inspect popu...
Read more
Categories:
Supported by:
-
console.log() is great, but do you know console.table()? console.group()? console.assert()?
https://twitter.com/nghuuphuoc/status/1505892172700299268...
Read more
Categories:
Supported by:
-
Debug CSS grid areas
A really useful way to position elements on a CSS grid is using the grid-template-areas property. Wi...
Read more
Categories:
Supported by:
-
Emulate forced-color mode
Operating systems offer an accessibility feature where the colors shown on the screen are converted...
Read more
Categories:
Supported by:
-
Check if your site can be instantly reloaded from bfcache
Most browsers are now able to instantly go back to previously visited pages without having to wait f...
Read more
Categories:
Supported by:
-
Send feedback, ask for features and report bugs
Browser vendors depend on your feedback to build the right tools for you. Without hearing from you...
Read more
Categories:
Supported by:
-
Manipulate complex JSON files using DevTools
I often work with large amount of data that I need to go through and gather interesting information...
Read more
Categories:
Supported by:
-
Detect low color contrast issues
Low color vision is very common, and your choice of text and background colors can negatively impact...
Read more
Categories:
Supported by:
-
Paste multiple CSS declarations at once
You know how you can paste a CSS property name or value in the Styles (or Rules) panel? Well, you ca...
Read more
Categories:
Supported by:
-
Detect the element with focus at any time
If you want to know which element has the focus on the web page at any time, you can use a live expr...
Read more
Categories:
Supported by:
-
Use full browser window for device emulation
Emulating different devices in the browser is incredibly useful. It gets tricky when you are on a de...
Read more
Categories:
Supported by:
-
Record and replay user flows
Have you ever had to test the same user scenario again and again while working on a fix or performan...
Read more
Categories:
Supported by:
-
Remove or disable event listeners
When you're trying to debug something and event listeners on the page keep interfering with what you...
Read more
Categories:
Supported by:
-
Select elements with pointer-events:none by holding Shift
When selecting elements from the page they normally get highlighted on hover and selected on click....
Read more
Categories:
Supported by:
-
Write code on multiple lines in the Console
If you're feeling adventurous and want to write longer pieces of code in the Console to execute more...
Read more
Categories:
Supported by:
-
Download all images from the page
If you want to download all of the images on a webpage in one go, you can use the following few line...
Read more
Categories:
Supported by:
-
Edit and resend faulty network requests to debug them
When you're investigating a bug where the backend you connect to doesn't respond with the right thin...
Read more
Categories:
Supported by:
-
Highlight the effect of individual CSS properties on hover
How do certain CSS properties apply to the page isn't always an easy question to answer.
While some...
Read more
Categories:
Supported by:
-
Copy a CSS rule as CSS-in-JS format
Do you use a CSS-in-JS framework? If so, you know how frustrating it can be to copy CSS from DevTool...
Read more
Categories:
Supported by:
-
Scroll an element into view
If the inspected web page is long with a lot of elements, and its DOM tree is big and complex, it's...
Read more
Categories:
Supported by:
-
Take screenshots of your site in a device frame
Taking a photo of a mobile device or tablet is daunting as you have to deal with fingerprints, glare...
Read more
Categories:
Supported by:
-
Take a screenshot of a single node
In Firefox, Chrome, Polypane and Edge DevTools, you can screenshot a single node from the page.
Go...
Read more
Categories:
Supported by:
-
Automatically logging name and value in console.log()
Using the console of DevTools you can to log some information to debug your JavaScript.
The common w...
Read more
Categories:
Supported by:
-
Move panels to re-arrange them
Moving panels around the user interface can be very useful to make DevTools more unique to you and a...
Read more
Categories:
Supported by:
-
Format console messages
You can use special formatters in the console.log function to format logs just the way you want.
Us...
Read more
Categories:
Supported by:
-
Simulate pseudo CSS classes
If you use :hover, :active, and other such pseudo-classes in CSS, you can actually simulate these st...
Read more
Categories:
Supported by:
-
Zoom the DevTools UI to your liking
Do you find the UI of DevTools too small to comfortably work with? Because this UI is made of HTML a...
Read more
Categories:
Supported by:
-
See the page in 3D
See your page in 3 dimensions to quickly find out how deeply nested it is, fix z-index stacking issu...
Read more
Categories:
Supported by:
-
Cut down on console noise using live expressions
Using the Console of DevTools to log information that changes a lot is a bad idea. First of all, you...
Read more
Categories:
Supported by:
-
Easily change CSS number values from the keyboard in increments of 0.1, 1, 10, 100
When playing with styling or layout code in DevTools, it's useful to be able to change widths, margi...
Read more
Categories:
Supported by:
-
Find and export CSS changes
If you spent time changing CSS in DevTools, either in the Rules panel (in Firefox), or in the Source...
Read more
Categories:
Supported by:
-
Use commands to do things faster
There is a command menu in Edge and Chrome that allows you to quickly access many different features...
Read more
Categories:
Supported by:
-
Evaluate XPath to find elements in the page
DevTools supports 2 ways to evaluate XPath expressions to help you locate elements in the page. All...
Read more
Categories:
Supported by:
-
Store a node as a variable to use it in the console
If you want to use a DOM node from the page in the console:
Right-click the node in the Elements (o...
Read more
Categories:
Supported by:
-
Console.log() for the web with logpoints
Using the console to log some information is a very common way to debug your JavaScript. But you can...
Read more
Categories:
Supported by:
-
Debug popups that appear on hover using JS
Have you ever been frustrated because you couldn't style a popup or tooltip that appeared on hover?...
Read more
Categories:
Supported by:
-
Monitor all events dispatched on an element
You can use the monitorEvents global function in the Console panel to log all of the events dispatch...
Read more
Categories:
Supported by:
-
Edit CSS shadow visually
If you don't remember the CSS syntax for the box-shadow property (and who does!), then Chrome and Ed...
Read more
Categories:
Supported by:
-
Hide resources loaded by extensions in the Network panel
If you want to hide scripts and other resources loaded by browser extensions in the Network panel, u...
Read more
Categories:
Supported by:
-
Jump from a CSS variable usage to where it is defined
CSS custom properties (also called variables) are very useful to avoid repeating values in CSS, like...
Read more
Categories:
Supported by:
-
Pause script execution when the DOM changes
If you want to know what JavaScript code removes, adds, or modifies a DOM element in the page, you c...
Read more
Categories:
Supported by:
-
Convert color formats
Colors in CSS can be expressed in a number of different formats: keyword (e.g. blue), RGB, HSL, hexa...
Read more
Categories:
Supported by:
-
Change the color theme of DevTools
Chrome, Firefox and Safari all have a light and dark theme for their DevTools. Edge not only has tho...
Read more
Categories:
Supported by:
-
Force PWA periodic background syncs
The periodic background sync API, available to PWAs is a great way to fetch new content while the us...
Read more
Categories:
Supported by:
-
Visualize the screen reader order for elements within the page
Edge has an accessibility tab within the elements panel that, among other things, lets you visualize...
Read more
Categories:
Supported by:
-
Block resources to test your site without CSS or JavaScript
The various resources loaded by your site aren't always guaranteed to reach your users when they vis...
Read more
Categories:
Supported by:
-
Prototype content changes with designMode
When creating or modifying a design prototype for the web, you may want to quickly edit content in t...
Read more
Categories:
Supported by:
-
Capture node creation stack traces
Have you ever wanted to know what caused a specific DOM node or element to be created in the page?
W...
Read more
Categories:
Supported by:
-
Throttle the network speed to test your website on slower connections
While you may develop your website on a fast network connection at home or at work, your users may n...
Read more
Categories:
Supported by:
-
Copy an element's XPath expression
You can easily copy an element's XPath expression from DevTools. This is useful if you need this exp...
Read more
Categories:
Supported by:
-
Convert font property units
Font CSS properties such as font-size, line-height or letter-spacing can be expressed in multiple di...
Read more
Categories:
Supported by:
-
Find DevTools reference documentation
If you want to learn more about what other tools exist in a browser, or what features a given tool p...
Read more
Categories:
Supported by:
-
Drag and drop nodes in the DOM tree
If you need to move nodes or elements around in the DOM tree, to re-order things in the page, you ca...
Read more
Categories:
Supported by:
-
Event listeners are suppressed when paused
This is not really a tip, but rather an interesting thing to be aware of when debugging JavaScript....
Read more
Categories:
Supported by:
-
Sample colors from the page
Being able to sample colors from the page is super useful. Firefox, Edge and Chrome all allow you to...
Read more
Categories:
Supported by:
-
Apply CSS styles to console messages
The console.log output can be styled in DevTools using CSS.
console.log('%c Hello World', 'color: or...
Read more
Categories:
Supported by:
-
Find all images without alternative text
With HTML, you can add alternative text to images using the alt attribute. It can be used to add a t...
Read more
Categories:
Supported by:
-
Draw a box around all elements to debug your CSS and page structure
Simple, yet powerful, * { outline: 1px solid red; } is a useful debugging trick that helps understan...
Read more
Categories:
Supported by:
-
Find DOM elements from the console
$ and $$ are 2 functions you can use in the console to find elements in the page.
They are essential...
Read more
Categories:
Supported by:
-
Persist console messages across page navigations and reloads
By default, the messages displayed in the console get removed as soon as you refresh the page (or na...
Read more
Categories:
Supported by:
-
Simulate color vision deficiencies
People who visit your web pages may have different types of color vision deficiencies that, if you i...
Read more
Categories:
Supported by:
-
Edit CSS angles
In CSS, several different properties use angle unit values, such as the rotate() function of a trans...
Read more
Categories:
Supported by:
-
Copy an object from the console
The console panel supports a very handy copy() function that stringifies and copies anything you pas...
Read more
Categories:
Supported by:
-
Get the selected element in the console
If you selected an element in the Elements panel (in Chrome, Safari, Polypane or Edge) or the Inspec...
Read more
Categories:
Supported by:
-
Tweak css grid and flexbox alignment properties
Chrome and Edge both have a visual editor useful for tweaking flexbox and grid alignment properties....
Read more
Categories:
Supported by:
-
See quick accessibility information on hover
In Edge, Polypane and Chrome, whenever you use the element selector and hover over elements in the p...
Read more
Categories:
Supported by:
-
Filter requests in the Network panel by status code, mime type and more
The Network panel lets you filter requests by status code, or mime type, and more.
Click in the fil...
Read more
Categories:
Supported by:
-
View performance markers in order
When logging performance.timing events to the console, they appear in alphabetical order since they...
Read more
Categories:
Supported by:
-
Unminify JavaScript code to easily read and debug it
Sometimes, the JavaScript code that runs on a website is minified and really hard to read. This is c...
Read more
Categories:
Supported by:
-
Highlight all the elements that a CSS rule matches
When you want to know which elements a given CSS rule will apply to, in addition to the currently se...
Read more
Categories:
Supported by:
-
Expand DOM nodes recursively
You can expand all descendants under a given DOM node in one go, to avoid having to expand each node...
Read more
Categories:
Supported by:
-
Use the debugger statement to pause script execution
If you prefer to use console.log() statements rather than the JavaScript debugger because you find i...
Read more
Categories:
Supported by: