Skip to main content
All CollectionsIntegrationsShopifyShopify personalization
Customizing CSS for In-Page Personalization on Shopify
Customizing CSS for In-Page Personalization on Shopify

Learn how to customize in-page personalization elements in your Shopify store

Updated over a week ago

This guide provides a comprehensive overview of how to customize the appearance of in-page personalization elements within your Shopify store. We'll explore the CSS selectors and best practices to help you deliver a tailored and engaging shopping experience for your customers.


Understanding the CSS Structure

Each personalization component on your Shopify page is structured within a specific CSS framework. This structure allows for targeted styling and ensures consistency in design across your personalized elements. Let's break down the key components:

Main Container

The main container acts as the wrapper for all personalization components. Use the following class to apply global styling to your entire personalization section:

  • .g-selector-container: This class represents the primary wrapper.

Personalization Types

Different personalization types, such as text, images, or variants, are distinguished by additional classes. This allows you to apply specific styles based on the content type:

  • .g-selector-variants: For personalization based on product variants like size or color.

  • .g-selector-text: For text-based customizations.

  • .g-selector-image: For personalizations using images, such as user-uploaded images.

  • .g-selector-collection: For displaying a collection of options, such as color swatches or patterns.

  • .g-selector-condition: For conditional personalization logic, where options appear based on previous user selections.

Label for Element Name

Each personalization type includes a child element for the label or title. You can customize this label using the following selector:

  • .g-selector-label: Use this selector to style the text that describes the personalization options, for example, "Choose your size" or "Select a color.”


Customizing Buttons and States

Buttons are crucial elements in personalization, often used for selecting variants or conditions. Here's how you can customize their appearance:

Button Containers and Buttons

  • .g-selector-buttons: This class represents the container holding all the buttons for a specific option.

  • .g-selector-button: This class is applied to each individual button within the container.

Button States

You can style different states of buttons to provide visual feedback to users:

  • .g-selector-button-active: This class is applied when a button is currently selected by the user.

  • .g-selector-button-disabled: This class is applied when a button is unavailable or not clickable.


Styling Image Thumbnails

For personalizations that involve image-based choices, such as color swatches, you can use the following class:

  • .g-selector-collection-thumbnail: This class is applied to each image thumbnail in a collection. You can customize this class to adjust the size, borders, and layout of these images.


Example CSS Customizations

Below is an example of how you can customize the appearance of the selectors using CSS. Remember to maintain consistency with your brand and ensure responsiveness across different devices.

/* General container styling */
.g-selector-container { 
  padding: 20px; 
  border: 1px solid #e0e0e0; 
  background-color: #f9f9f9; 
} /* Styling for labels */
.g-selector-label { 
  font-size: 14px; 
  color: #333; 
  margin-bottom: 8px; 
} /* Buttons */
.g-selector-button { 
  background-color: #007bff; 
  color: #fff; 
  padding: 10px; 
  border: none; 
  cursor: pointer; 
} 
.g-selector-button-active { 
  background-color: #28a745; 
} 
.g-selector-button-disabled { 
  background-color: #ccc; 
  cursor: not-allowed; 
} /* Thumbnail customizations */
.g-selector-collection-thumbnail { 
  width: 100px; 
  height: 100px; 
  border: 2px solid #ddd; 
  margin: 5px; 
}


Best Practices for Customization

  • Maintain Consistency: Ensure your customizations align with your overall website branding for a cohesive user experience.

  • Test on All Devices: Test the responsiveness of your customizations on both desktop and mobile devices.

  • Enhance Accessibility: Use high-contrast colors for text and buttons and ensure proper focus states for all interactive elements to make your site accessible to all users.

Did this answer your question?