Examine and edit HTML — Firefox Source Docs documentation (2024)

You can examine and edit the page’s HTML in the HTML pane.

Navigating the HTML

HTML breadcrumbs

At the bottom on the HTML pane is a breadcrumbs toolbar. This shows the complete hierarchy through the document for the branch containing the selected element:

Examine and edit HTML — Firefox Source Docs documentation (1)

Hovering over a breadcrumb highlights that element in the page.

The breadcrumbs bar has its own keyboard shortcuts.

Searching

The Page Inspector’s search box matches all markup in the current document and in any frames.

To start searching the markup, click in the search box to expand it or press Ctrl + F , or Cmd + F on a Mac. There are three types of searches that are performed automatically depending on what you enter, a full text search, a CSS selector search, and an XPath search.

Full text search

The full text search will always be executed, independently of what you enter. That allows you to find CSS selectors and XPath expressions occurring within the text.

CSS selector search

You can search elements by entering a CSS selector

As you type, an autocomplete popup shows any class or ID attributes that match the current search term:

Examine and edit HTML — Firefox Source Docs documentation (2)

Press Up and Down to cycle through suggestions, Tab to choose the current suggestion, then Enter to select the first node with that attribute.

To cycle through matches, press Enter. You can cycle backwards through matches using Shift + Enter.

XPath search

It is also possible to search via XPaths. This allows you to search for specific elements without the conflict of matching words within the text. For example, //a matches all a elements but not the letter “a” within the text content. Furthermore it allows for some more advanced searches like finding elements that start with a specific text, for example.

Examine and edit HTML — Firefox Source Docs documentation (3)

HTML tree

The rest of the pane shows you the page’s HTML as a tree (this UI is also called the Markup View). Just to the left of each node is an arrow: click the arrow to expand the node. If you hold the Alt key while clicking the arrow, it expands the node and all the nodes underneath it.

Examine and edit HTML — Firefox Source Docs documentation (4)

Moving the mouse over a node in the tree highlights that element in the page.

Nodes that are not visible are shown faded/desaturated. This can happen for different reasons such as using display: none or that the element doesn’t have any dimensions.

There is an ellipsis shown between the opening and closing tag of an element when the node is collapsed if it has larger contents. Now children are indicated in the tree with this icon:

Markers (“badges”) are displayed to the right of some nodes. The table below explains the meaning of each badge:

event

The element has one or several event listeners attached to it. Clicking the marker opens a tooltip listing the event listeners and allows you for each listener to switch to the line of JavaScript code in the Debugger where the listener is defined.

scroll

The element is a scroll container, i.e. it has either overflow: scroll applied, or overflow: auto and sufficient content to cause scrollable overflow.

If preference devtools.overflow.debugging.enabled is true, toggling the scroll badge will highlight any elements causing the overflow, and these nodes will additionally display the overflow badge.

overflow

The element is causing scrollable overflow in a scroll container (either the current node or a parent node—the affected nodewill display the scroll badge).

Note: The overflow badge is introduced in Firefox 83. In earlier versions it can be enabled using the preference devtools.overflow.debugging.enabled is true.

grid

The element is a grid container, i.e. it has display: grid applied to it. Clicking the marker enables the grid highlighter.

flex

The element is a flex container, i.e. it has display: flex applied to it. Clicking the marker enables the flexbox highlighter.

inline-grid

The element is an inline grid container, i.e. it has display: inline-grid or display: inline grid applied to it. Clicking the marker enables the grid highlighter.

inline-flex

The element is an inline flex container, i.e. it has display: inline-flex or display: inline flex applied to it. Clicking the marker enables the flexbox highlighter.

custom…

The element is a custom element. Clicking the marker switches to the line of JavaScript code in the Debugger where the custom element got defined.

Note

There are some useful keyboard shortcuts that can be used in the HTML tree — see the HTML pane keyboard shortcuts list.

::before and ::after

You can inspect pseudo-elements added using ::before and ::after

Custom element definition

When you open the Inspector on a page that includes custom elements, you can view the class definition for the custom element in the Debugger:

  1. Inspect the element

  2. Click on the word custom

Examine and edit HTML — Firefox Source Docs documentation (6)

The source for the element’s class will be displayed in the Debugger.

Examine and edit HTML — Firefox Source Docs documentation (7)

Whitespace-only text nodes

Web developers don’t write all their code in just one line of text. They use white space such as spaces, returns, or tabs between their HTML elements because it makes markup more readable.

Usually this white space seems to have no effect and no visual output, but in fact, when a browser parses HTML it will automatically generate anonymous text nodes for elements not contained in a node. This includes white space (which is after all a type of text).

If these auto generated text nodes are inline level, browsers will give them a non-zero width and height. Then you will find strange gaps between elements, even if you haven’t set any margin or padding on them.

Since Firefox 52, the Inspector displays these whitespace nodes, so you can see where the gaps in your markup come from. Whitespace nodes are represented with a dot: and you get an explanatory tooltip when you hover over them:

Examine and edit HTML — Firefox Source Docs documentation (9)

To see this in action, see the demo at https://firefox-devtools.github.io/devtools-examples/whitespace-only-demo/index.html.

Shadow roots

Any shadow roots present in the DOM are exposed in the HTML page in the same manner as the regular DOM. The shadow root is signified by a node named #shadow-root — you can click its expansion arrow to see the full contents of the shadow DOM, and then manipulate the contained nodes in a similar way to other part of the page’s DOM (although with a limited featureset — you can’t, for example, drag and drop or delete shadow DOM nodes).

Examine and edit HTML — Firefox Source Docs documentation (10)

If a shadow DOM contains a “slotted” element (an element with a slot attribute after it has been inserted inside a slot element — see Adding flexibility with slots for an explanation of how these are used), the “slotted” element will be shown inside its corresponding slot element, with a “reveal” link alongside it. Clicking the “reveal” link will highlight the element with the slot attribute as it exists outside the shadow DOM

Examine and edit HTML — Firefox Source Docs documentation (11)

This is very useful when you’ve got a <slot> element and you can’t find the source of its content.

Note

Shadow DOM inspection was implemented in Firefox 61, but was hidden behind the dom.webcomponents.shadowdom.enabled pref until Firefox 63. It is now turned on by default.

Element popup context menu

You can perform certain common tasks on a specific node using a popup context menu. To activate this menu, context-click the element. The menu contains the following items — click on the links to find the description of each command in the Context menu reference:

  • Edit As HTML

  • Create New Node

  • Duplicate Node

  • Delete Node

  • Attributes

    • Add Attribute

    • Copy Attribute Value

    • Edit Attribute

    • Remove Attribute

  • Break on …

    • Subtree Modification

    • Attribute Modification

    • Node Removal

  • Use in Console

  • Show DOM Properties

  • Show Accessibility Properties

  • Change Pseudo-class

    • hover

    • active

    • focus

    • focus-visible

    • focus-within

    • visited

  • Screenshot Node

  • Scroll Into View

  • Copy

    • Inner HTML

    • Outer HTML

    • CSS Selector

    • CSS Path

    • XPath

    • Image Data-URL

    • Attribute

  • Paste

    • Inner HTML

    • Outer HTML

    • Before

    • After

    • As First Child

    • As Last Child

  • Expand All

  • Collapse All

  • Open Link in New Tab [1]

  • Open File in Debugger [1]

  • Open File in Style-Editor [1]

  • Copy Link Address [1]

[1] These options only appear in certain contexts, for example the “Open File in Style-Editor” option only appears when you context-click over the top of a link to a CSS file.

Context menu reference

Edit as HTML

Edit the element’s HTML.

(Copy) Inner HTML

Copy the inner HTML for the element.

(Copy) Outer HTML

Copy the outer HTML for the element.

Pressing Ctrl + C (or Cmd + C on a Mac) also performs this action.

(Copy) Unique Selector/CSS Selector

Copy a CSS selector that uniquely selects the element.

(Copy) CSS Path

Copy a CSS selector that represents the full path to the element.

(Copy) Image Data-URL

Copy image as a data:// URL, if the selected element is an image.

(Copy) Attribute

Copy the attribute of the element.

Show DOM Properties

Open the split console and enter the console command “inspect($0)” to inspect the currently selected element.

Use in Console

Assigns the currently selected node to a variable named temp0 (or temp1 if temp0 is already taken, and so on), then opens the split console, enabling you to interact with that node using the console’s command line.

Expand All

In the tree view, expand the current element and all the elements underneath it. This is equivalent to holding the Alt key and clicking the disclosure triangle next to an element.

Collapse

In the tree view, collapse the current element. This is equivalent to clicking the disclosure arrow next to an element that’s expanded.

(Paste) Inner HTML

Paste the clipboard contents into the node as its innerHTML.

(Paste) Outer HTML

Paste the clipboard contents into the node as its outerHTML.

(Paste) Before

Paste the clipboard contents into the document immediately before this node.

(Paste) After

Paste the clipboard contents into the document immediately after this node.

(Paste) As First Child

Paste the clipboard contents into the document as the first child of this node.

(Paste) As Last Child

Paste the clipboard contents into the document as the last child of this node.

Scroll Into View

Scrolls the web page so the selected node is visible.

From Firefox 44, pressing the keyboard shortcut S will also scroll the selected node into view.

Screenshot Node

Takes a screenshot of the selected node, saved to your Downloads directory. See Taking screenshots.

Create New Node

Create a new empty <div> as the last child of the currently selected element. See Inserting new nodes.

Duplicate Node

Create a copy of this element, and insert the copy immediately after this element.

Delete Node

Delete the element from the DOM.

Attribute/Add Attribute

Add an attribute to the element.

Attribute/Edit Attribute

(only when invoked on an attribute) Edit the attribute.

Attribute/Remove Attribute

(only when invoked on an attribute) Remove the attribute.

Open Link in New Tab

(only when invoked over a link, such as an href attribute) Opens the linked item in a new tab.

Open File in Debugger

(only when invoked over a link to a JS source) Opens the linked source in the Debugger.

Open File in Style-Editor

(only when invoked over a link to a CSS source) Opens the linked source in the Style Editor.

Copy Link Address

(only when invoked over a URL) Copy the URL.

(Change Pseudo-class) hover

Set the :hover CSS pseudo-class.

(Change Pseudo-class) active

Set the :active CSS pseudo-class.

(Change Pseudo-class) focus

Set the :focus CSS pseudo-class.

(Change Pseudo-class) focus-visible

Set the :focus-visible CSS pseudo-class.

(Change Pseudo-class) focus-within

Set the :focus-within CSS pseudo-class.

(Change Pseudo-class) visited

Set the :visited CSS pseudo-class.

Editing HTML

You can edit the HTML — tags, attributes, and content — directly in the HTML pane: double-click the text you want to edit, change it, and press Enter to see the changes reflected immediately.

To edit an element’s outerHTML, activate the element’s popup menu and select “Edit As HTML”. You’ll see a text box in the HTML pane:

Examine and edit HTML — Firefox Source Docs documentation (12)

You can add any HTML in here: changing the element’s tag, changing existing elements, or adding new ones. Once you click outside the box, the changes are applied to the page.

When you’re editing HTML, the context menu you’ll see is the normal one for working with editable text:

Examine and edit HTML — Firefox Source Docs documentation (13)

Copy and paste

You can use the popup menu to copy nodes in the HTML tree and paste them into the desired location.

Drag and drop

You can reorganize the HTML content of a page by moving nodes in the HTML tree. Just click and hold on any element and drag it up or down in the tree. When you release the mouse button, the element will be inserted at the corresponding position:

You can cancel the drag and drop by pressing the Esc key.

Inserting new nodes

There’s a “+” icon at the top of the markup view:

Examine and edit HTML — Firefox Source Docs documentation (14)

Click this icon to insert an empty {{HTMLElement(“div”)}} into the document as the last child of the currently selected element. You can then edit the new node’s content and styling just as you would any other node in the document.

You can access the same functionality using the “Create New Node” popup menu item.

Note that this button is disabled if the selected element’s type is such that adding a last-child would have no effect (for example, if it is an html or iframe element). However, it is enabled in places where it is not valid to insert a div, such as style or link. In these cases the element is added as text.

Examine and edit HTML — Firefox Source Docs  documentation (2024)

FAQs

How do I edit source HTML in Firefox? ›

Editing HTML

You can edit the HTML — tags, attributes, and content — directly in the HTML pane: double-click the text you want to edit, change it, and press Enter to see the changes reflected immediately. You can add any HTML in here: changing the element's tag, changing existing elements, or adding new ones.

How to inspect HTML in Firefox? ›

There are two main ways to open the Inspector:
  1. Select the Inspector panel in the Web Developer Tools, accessible from the Browser Tools submenu.
  2. Right-click an element on a web page and select Inspect Element.

How do you inspect source in Firefox? ›

View Source lets you look at the HTML or XML source for the page you're viewing. To activate View Source: context-click in the page and select View Page Source. press Ctrl + U on Windows and Linux, or Cmd + U on macOS.

How to edit HTML source code? ›

HTML Editors
  1. Step 1: Open Notepad (PC) Windows 8 or later: ...
  2. Step 1: Open TextEdit (Mac) Open Finder > Applications > TextEdit. ...
  3. Step 2: Write Some HTML. Write or copy the following HTML code into Notepad: ...
  4. Step 3: Save the HTML Page. Save the file on your computer. ...
  5. Step 4: View the HTML Page in Your Browser.

How do you inspect edit as in HTML? ›

To modify or delete a page element, select its code in the inspector. Then, either double-click to change the text, or right-click and choose Edit as HTML or Create New Node to add code. Or simply delete the code and see the resulting changes on the page.

How do I edit a document in Firefox? ›

Open the PDF in Firefox and click the Text or Draw buttons in the upper right corner to make changes to your document. Download the file to save it with your changes.

How do you inspect a document in HTML? ›

Inspect Element is available in most web browsers. You can access it by right-clicking on a web page and selecting Inspect from the menu. Once you have opened the Inspect window, you will see the HTML and CSS code for the web page and can make various changes.

How to edit HTML in browser? ›

To test HTML code in a browser, right-click on the web page and select 'Inspect'. This opens dev tools where you can view and edit HTML and CSS in the 'Elements' tab. For quick changes, like modifying a button's color, locate its CSS in dev tools, edit the values, and see the changes in real time.

How to edit a website with inspect element in Firefox? ›

If you are using the inspector tool, go to the inspector tab, right click anywhere in the page where you want to inspect and choose Inspect Element, an icon will appear on the page on that element, click on that icon and you will find "Edit as HTML". Attached is a screenshot.

Where is Firefox's source code? ›

To simply take a look at the Firefox source code, you do not need to download it. You can look at the source directly with your web browser using Searchfox (start at https://searchfox.org/mozilla-central/source for the complete firefox source code of branch HEAD).

What is the shortcut to inspect code in Firefox? ›

Page Inspector
CommandWindowsLinux
Inspect ElementCtrl + Shift + CCtrl + Shift + C

How do I inspect media queries in Firefox? ›

To show current media queries open settings (F1 from dev tools) and check "Show Browser Styles" under the Inspector section. The media query will be shown just to the right of the file name and line number.

Can a HTML document be edited? ›

To edit a saved HTML file, you will need to open it in a text editor such as Notepad, TextEdit, or Sublime Text. Once the file is open, you can make changes to the code and save the file.

Can HTML files be edited? ›

HTML file, you can either launch it within the text editor you created it in, if you want to edit the code or you can view it in a web browser.

What is HTML source editor? ›

The HTML Source Code Editor allows you to view and edit the HTML code that makes up your articles and text areas.

What is the source code editor for Firefox? ›

Visual Studio Code is the recommended editor for Firefox development.

How to edit HTML code in browser? ›

To test HTML code in a browser, right-click on the web page and select 'Inspect'. This opens dev tools where you can view and edit HTML and CSS in the 'Elements' tab. For quick changes, like modifying a button's color, locate its CSS in dev tools, edit the values, and see the changes in real time.

How do I edit a HTML save? ›

To edit a saved HTML file, you will need to open it in a text editor such as Notepad, TextEdit, or Sublime Text. Once the file is open, you can make changes to the code and save the file. It is important to have a basic understanding of HTML and its syntax in order to make effective edits to the file.

Top Articles
Latest Posts
Article information

Author: Otha Schamberger

Last Updated:

Views: 5724

Rating: 4.4 / 5 (55 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Otha Schamberger

Birthday: 1999-08-15

Address: Suite 490 606 Hammes Ferry, Carterhaven, IL 62290

Phone: +8557035444877

Job: Forward IT Agent

Hobby: Fishing, Flying, Jewelry making, Digital arts, Sand art, Parkour, tabletop games

Introduction: My name is Otha Schamberger, I am a vast, good, healthy, cheerful, energetic, gorgeous, magnificent person who loves writing and wants to share my knowledge and understanding with you.