👀 Live Preview
Legacy <object> markup (modern browsers show fallback content):
object with classid — ActiveX controls do not run in modern browsers. Fallback text appears instead.

The classid attribute in HTML is used with the <object> element to specify the location or identifier of an object’s implementation, typically for embedding ActiveX controls in legacy web pages. It was more common in older versions of Internet Explorer and has largely been deprecated in modern web development due to security concerns and the shift toward standardized HTML5 technologies.
On embed.
ActiveX ID.
Impl URL.
Pass options.
JS property.
Different.
classid AttributeThe primary purpose of the classid attribute is to define the URI or programmatic identifier (CLSID) of the embedded object that the browser should load. It tells the browser where to find the code necessary to run the plugin or control—historically ActiveX in Internet Explorer.
classid identifies an embedded object implementation on <object>. The class attribute assigns CSS class names for styling. They are completely unrelated despite similar names.
Add classid to an <object> element with a URI or CLSID value:
<object classid="clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" width="400" height="300">
<p>Fallback content</p>
</object><object> (and legacy <applet>).clsid: followed by a GUID for ActiveX.<param> elements to pass configuration to the control.<object>.data on object, or <video>, <iframe>.The value of the classid attribute is typically a URI that points to the object implementation. Common forms include:
Specifies the location of the object implementation:
<object classid="http://www.example.com/someobject">
<p>Fallback</p>
</object>A unique identifier for a COM/ActiveX control:
<object classid="clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX">
<p>Fallback</p>
</object>| Value Type | Example | Modern Alternative |
|---|---|---|
| CLSID URI | clsid:GUID | Native HTML5 / JavaScript APIs |
| HTTP URI | http://example.com/plugin | data attribute or <iframe> |
| Element | <object> | <embed>, <video> |
| Config | <param name="..."> | JS options / attributes |
| JS access | object.classid | Rarely needed today |
| HTML5 status | Legacy / obsolete | Avoid in new projects |
| Element | Supported? | Notes |
|---|---|---|
<object> | Yes (legacy) | Primary element for classid |
<applet> | Obsolete | Java applets; removed from HTML5 |
<embed> | No | Uses src or type instead |
<div class="..."> | No | That is the CSS class attribute |
<iframe> | No | Uses src for embedded documents |
URL and CLSID classid values, object with param, and dynamic JavaScript classid.
Legacy <object> markup (modern browsers show fallback content):
object with classid — ActiveX controls do not run in modern browsers. Fallback text appears instead.
<object classid="http://www.example.com/someobject" width="300" height="200">
<p>Your browser does not support this object.</p>
</object>Let’s look at an example of how the classid attribute might have been used in an HTML document:
<object classid="clsid:CLSID-ExampleID" width="400" height="300">
<param name="paramName" value="paramValue">
<p>Your browser does not support embedded objects.</p>
</object>In this example, the classid attribute specifies the CLSID of an ActiveX control. The <param> tags pass configuration values to the control. If the browser cannot load the object, the fallback paragraph is shown.
You can dynamically set the classid attribute using JavaScript when the embedded object must change based on conditions:
<object id="dynamicObject" width="200" height="100">
Your browser does not support this object.
</object>
<script>
document.getElementById("dynamicObject").classid =
"clsid:NEW-EXAMPLE-ID";
</script>In this script, the classid property is set dynamically on the object with id dynamicObject. This was used in legacy applications to swap ActiveX controls at runtime.
<object> when plugins fail.Add a URI or clsid: value on <object>.
Legacy IE attempted to instantiate the COM/ActiveX control.
<param> elements pass name/value pairs to the object.
Modern browsers skip ActiveX and show fallback content instead.
The classid attribute for ActiveX is obsolete. It was primarily supported in legacy Internet Explorer and is not used in modern browsers.
Use <iframe>, <video>, <embed>, or JavaScript APIs instead.
Bottom line: Learn classid for legacy maintenance only. Do not use ActiveX or classid in new web applications.
<object><iframe> or native HTML5 for new embedsclassid from CSS classclassid attribute.<embed>, <iframe>, or native HTML5 elements.While the classid attribute was once a key part of embedding ActiveX controls and other objects in HTML documents, it has largely fallen out of use due to security issues and the evolution of web standards.
Understanding its purpose and usage can be valuable for maintaining legacy systems, but modern web development should prioritize secure, widely supported technologies.
classidBookmark these when reading legacy HTML.
Embed tag.
ElementActiveX ID.
ValueLegacy IE.
StatusJS property.
ScriptNot CSS.
Compare<object>, historically for ActiveX.classid identifies a plugin implementation. class assigns CSS styling hooks.clsid: URI with a GUID that identifies a COM/ActiveX control, e.g. clsid:XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.objectElement.classid = "clsid:..." or use setAttribute("classid", value).<iframe>, <video>, <audio>, <canvas>, and Web APIs replace ActiveX embeds.Explore the obsolete classid attribute on <object> and learn why modern sites use iframe and HTML5 instead.
5 people found this page helpful