Is it possible to change the amount of items displayed in a Webflow CMS collection based on the device size?

Published on
September 22, 2023

Yes, it is possible to change the amount of items displayed in a Webflow CMS collection based on the device size. This can be achieved by using conditional visibility settings and custom CSS.

Here are the steps to accomplish this:

  1. Create a CMS collection: Start by creating a new CMS collection or editing an existing one in the Webflow Designer.

  2. Add a new dynamic list: Drag and drop a dynamic list element onto the page where you want to display the collection items.

  3. Configure the dynamic list: In the dynamic list settings panel, select the CMS collection you want to display. Set the layout of the dynamic list to determine how the items should be displayed.

  4. Set the visibility settings: Click on the dynamic list element and navigate to the "Visibility" settings in the right panel. Here, you can set different visibility settings based on the device size.

  5. Add custom CSS: To change the amount of items displayed based on the device size, you will need to add custom CSS code. Click on the "+" button next to "Class" in the Styles panel and create a new class for your dynamic list.

  6. Write custom CSS: In the custom CSS code, you can use media queries to target specific device sizes and set the desired number of items to display. For example:

@media (max-width: 767px) {  .my-dynamic-list {    display: grid;    grid-template-columns: repeat(1, 1fr);  }}@media (min-width: 768px) and (max-width: 991px) {  .my-dynamic-list {    display: grid;    grid-template-columns: repeat(2, 1fr);  }}@media (min-width: 992px) {  .my-dynamic-list {    display: grid;    grid-template-columns: repeat(3, 1fr);  }}

In the above example, the dynamic list will display one item per row on devices with a maximum width of 767px, two items per row on devices with a width between 768px and 991px, and three items per row on devices with a minimum width of 992px.

  1. Apply the custom CSS class: Go back to the dynamic list element and add the custom CSS class you created to it.

By following these steps, you can change the amount of items displayed in a Webflow CMS collection based on the device size, providing a responsive and optimized user experience.

Additional Questions:

  1. How can I create a dynamic list in Webflow CMS?
  2. What are conditional visibility settings in Webflow?
  3. How do I add custom CSS to a Webflow project?