Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
DictionaryCComponent Reference, Visualforce
DevelopmentAdvanced

Component Reference, Visualforce

The Component Reference for Visualforce is Salesforce published catalog of every standard Visualforce tag, organized by namespace (apex, chatter, knowledge, liveAgent, and others) with each tag attributes, types, defaults, and sample markup.

§ 01

Definition

The Component Reference for Visualforce is Salesforce published catalog of every standard Visualforce tag, organized by namespace (apex, chatter, knowledge, liveAgent, and others) with each tag attributes, types, defaults, and sample markup. Developers consult it when building Visualforce pages to confirm which tag to use, which attributes it accepts, and how it nests with other tags.

The reference lives on the Salesforce developer documentation site and ships alongside the Visualforce Developer Guide. It is the source of record because Visualforce is a closed tag library; you cannot invent new apex namespace tags, only use the ones Salesforce ships. The reference has been effectively frozen since around 2018, when Salesforce moved most new investment into Lightning Web Components. Visualforce-specific bug fixes and an occasional new attribute still appear in release notes, but the tag list itself rarely changes.

§ 02

What is in the Visualforce Component Reference and how to read it

How the reference is organized

The reference is grouped by namespace. The apex namespace holds the bulk of components: form controls (apex:inputField, apex:selectList), layout containers (apex:pageBlock, apex:pageBlockSection), data iteration (apex:repeat, apex:dataTable), AJAX (apex:actionFunction, apex:actionSupport), and page chrome (apex:page, apex:include). Other namespaces are smaller and feature-scoped: chatter for Chatter feeds, knowledge for the older Knowledge feature, liveAgent for Live Agent chat, ideas for the legacy Ideas feature, and a few more.

What each tag entry shows

A typical entry lists a short description, the list of attributes (with type, default value, and whether it is required), the allowed child elements, and a working sample markup block. Attributes that are reactive (re-render the section when bound data changes) are flagged separately. Some tags have a Lightning Experience supported flag that tells you whether the tag still renders correctly in LEX or only in Classic.

The Lightning Experience and mobile support indicators

Most apex tags work in Lightning Experience, but not all. The reference marks each tag with a green or red Lightning Experience indicator and a separate one for Salesforce Mobile. Tags like apex:detail, apex:relatedList, and a few others render correctly in LEX with limitations; a small set (mostly legacy chatter and ideas tags) does not render at all. Always check this flag before you assume a Classic-built page will work in LEX.

Sample markup blocks and why they are deceptively short

Each entry has a Sample Markup block that shows the tag in context. These are intentionally minimal: one or two attributes, no controller binding, no styling. They are useful for proving the tag compiles, but they do not show the realistic pattern of binding to an Apex controller, nesting inside apex:pageBlockSection, or wiring up actionStatus. Real Visualforce code looks much fuller than the samples imply.

Standalone reference page versus inline IDE help

The Visualforce Developer Console has a built-in component reference panel that opens inline when you start typing a tag, showing the same information without leaving the editor. The Web reference is more browsable for exploration; the Developer Console panel is faster when you know roughly which tag you need and want to confirm attribute names. Salesforce CLI and VS Code with the Salesforce Extensions also surface autocomplete from the same metadata.

What is not in the reference

The reference covers standard tags only. Custom Visualforce components built with apex:component (the file extension .component) are listed in your org metadata, not in the public reference. Managed-package components (named like ns:tagName) are documented in the package vendor documentation rather than the Salesforce reference. The reference also omits HTML and JavaScript that you can put inside Visualforce pages, since those follow standard W3C documentation.

How the reference relates to the Lightning Component Library

For Lightning Components and Lightning Web Components, Salesforce publishes a separate, more interactive Component Library at developer.salesforce.com/docs/component-library. It does for LWC and Aura what the Visualforce reference does for apex tags. For new development, that is the reference you should use. The Visualforce reference is for maintaining existing pages and for understanding Salesforce-internal Visualforce-based screens that remain in many older orgs.

§ 03

How to use the Component Reference effectively

The reference is a flat catalog: you find the tag you want, read the attribute list, and copy the sample markup. Two practices make it useful day-to-day instead of just a reference dump.

  1. Bookmark the apex namespace index

    Most Visualforce work uses apex tags. The top-level apex namespace index page groups all of them on one scrollable page, which is faster than clicking through the categorized navigation.

  2. Use browser find rather than the docs navigation

    The reference has a categorized sidebar but no full-text search across attributes. Browser find (Ctrl+F or Cmd+F) across the namespace index page is usually faster when you remember a partial tag name.

  3. Cross-check the Lightning Experience flag

    Open the tag detail page and look for the Lightning Experience and Salesforce Mobile compatibility indicators. If either is red, the tag will silently degrade in those contexts; you will get a different rendering or no rendering at all.

  4. Compare the sample markup to your context

    The sample shows minimum-viable usage. For real production patterns, look at how Salesforce-internal pages use the tag (View Source on any standard Salesforce VF page in Classic) or check Trailhead modules that exercise the tag in context.

  5. Switch to the Component Library for new builds

    If you are starting a new screen rather than maintaining an existing Visualforce page, do not use the Visualforce reference. Use the Lightning Component Library and build with LWC or Aura. Salesforce stopped investing in Visualforce tags around 2018.

Key options
Visualforce Developer Guideremember

Companion long-form guide that explains controllers, expressions, and the Visualforce page lifecycle.

Lightning Component Libraryremember

The newer, interactive reference at developer.salesforce.com/docs/component-library for LWC and Aura.

Developer Console inline referenceremember

Same component metadata, surfaced as you type inside the Salesforce Developer Console page editor.

Gotchas
  • The reference shows the tag list for one release at a time. If your org is on a Sandbox preview or trial, switch the version selector at the top of the docs to match.
  • Sample markup is intentionally minimal and almost never demonstrates the controller binding you need. Treat it as a hint, not a template.
  • Tags marked unavailable in Lightning Experience silently render as plain text or not at all in LEX. Always check the flag before assuming a tag works.
  • Custom Visualforce components built by your team or by managed packages are not in this reference. Look at the .component metadata in Setup or in the package documentation.
  • Visualforce has been in maintenance mode since around 2018. New development should use LWC; the reference will not get new tags.
§

Trust & references

Sources

Cross-checked against the following references.

Official documentation

Straight from the source - Salesforce's reference material on Component Reference, Visualforce.

Keep learning

Hands-on resources to go deeper on Component Reference, Visualforce.

Was this entry helpful?
Help us write better definitions. Quick reactions or detailed edit suggestions.

About the Author

Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.

§

Test your knowledge

Q1. What is the Component Reference for Visualforce?

Q2. Is Visualforce still the recommended UI framework for new development?

Q3. What's a primary use case for the Visualforce Component Reference today?

§

Discussion

Loading…

Loading discussion…