contents
Documentation Version
Summer '15 (API version 34.0)
Language
English
  • Summer '15 (API version 34.0) 34.0
  • Spring '15 (API version 33.0) 33.0
  • Winter '15 (API version 32.0) 32.0
  • Summer '14 (API version 31.0) 31.0
  • Spring '14 (API version 30.0) 30.0
  • Winter '14 (API version 29.0) 29.0
  • English
  • Japanese

Using Custom Styles

Use the <apex:stylesheet> tag or static HTML to include your own style sheet or styles.
For HTML tags, you can define inline CSS code, just like in a regular HTML page.
<apex:page>
    <style type="text/css">
        p { font-weight: bold; }
    </style>

    <p>This is some strong text!</p>
</apex:page>
This example references a style sheet that is defined as a static resource. First, create a style sheet and upload it as a static resource named customCSS.
h1 { color: #f00; }
p { background-color: #eec; }
newLink { color: #f60; font-weight: bold; }
Next, create a page that refers to this static resource.
<apex:page showHeader="false">
    <apex:stylesheet value="{!$Resource.customCSS}" />
    <h1>Testing Custom Stylesheets</h1>
    <p>This text could go on forever...<br/><br/>
       But it won't!</p>

    <apex:outputLink value="http://www.salesforce.com" styleClass="newLink">
        Click here to switch to www.salesforce.com
    </apex:outputLink>
</apex:page>
Tip

Tip

If you’re not using Salesforce styles, you can shrink your page size by preventing the standard Salesforce style sheets from loading. To prevent loading, set the standardStylesheets attribute on the <apex:page> component to false.
<apex:page standardStylesheets="false">
    <!-- page content here -->
</apex:page>
If you don’t load the Salesforce style sheets, components that require them don’t display correctly.

Visualforce components that produce HTML have pass-through style and styleClass attributes. These attributes allow you to use your own styles and style classes to control the look and feel of the resulting HTML. For example, the following code sets the class of the <apex:outputText> and applies a style.
<apex:page>
    <style type="text/css">
        .italicText { font-style: italic; }
    </style>
    <apex:outputText styleClass="italicText" value="This is kind of fancy."/>
</apex:page>

To apply a style using a DOM ID, use CSS attribute selectors for the style definition. See Defining Styles for a Component’s DOM ID.

If you intend to use images in your style sheet, zip the images with the CSS file, and upload the file as a single static resource. For example, suppose your CSS file has a line like the following.
body { background-image: url("images/dots.gif") }
Combine the entire images directory and the parent CSS file into a single zip file. In this example, the zip file resource name is myStyles.
<apex:stylesheet value="{!URLFOR($Resource.myStyles, 'styles.css')}"/>
Warning

Warning

If a style sheet has an empty string in a url value, you can’t render that page as a PDF. For example, the style rule body { background-image: url(""); } prevents any page that includes the rule from being rendered as a PDF.