<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nicoli Liedtke, Author at DMC, Inc.</title>
	<atom:link href="https://static.dmcinfo.com/blog/author/nicolil/feed/index.xml" rel="self" type="application/rss+xml" />
	<link></link>
	<description></description>
	<lastBuildDate>Tue, 07 Jul 2026 18:30:19 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1.2</generator>

<image>
	<url>https://static.dmcinfo.com/wp-content/uploads/2025/04/site-icon-150x150.png</url>
	<title>Nicoli Liedtke, Author at DMC, Inc.</title>
	<link></link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Custom CSS in Ignition Perspective: Adding Transforms and Transitions</title>
		<link>https://static.dmcinfo.com/blog/17892/custom-css-in-ignition-perspective-adding-transforms-and-transitions/</link>
		
		<dc:creator><![CDATA[Nicoli Liedtke]]></dc:creator>
		<pubDate>Thu, 26 Jan 2023 14:05:07 +0000</pubDate>
				<category><![CDATA[HMI and SCADA]]></category>
		<category><![CDATA[Ignition]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/17892/custom-css-in-ignition-perspective-adding-transforms-and-transitions/</guid>

					<description><![CDATA[<p>Ignition is a widespread, robust Industrial SCADA platform. Perspective is a visualization module within Ignition that allows the creation of HTML applications for everything from simple plant floor HMIs to a remote user&#8217;s computer. One of Perspective’s major strengths is its mobile-friendly design nature. Behind Ignition Perspective are traditional web technologies such as HTML and [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/17892/custom-css-in-ignition-perspective-adding-transforms-and-transitions/">Custom CSS in Ignition Perspective: Adding Transforms and Transitions</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Ignition is a widespread, robust Industrial SCADA platform. Perspective is a visualization module within Ignition that allows the creation of HTML applications for everything from simple plant floor HMIs to a remote user&#8217;s computer. One of Perspective’s major strengths is its mobile-friendly design nature.</p>



<p class="wp-block-paragraph">Behind Ignition Perspective are traditional web technologies such as HTML and CSS. Ignition Perspective abstracts away some of the traditional web development from developers using Ignition to develop Ignition Applications. Developers get a streamlined development platform that makes it easier to stand up applications quickly and more easily interface with more of Ignition&#8217;s built-in backend functionality.</p>



<p class="wp-block-paragraph">That being said, Ignition Perspective essentially offers complete access to all the standard CSS properties within the web development world. For the majority of development, styling can be attached to perspective components with Ignition&#8217;s styling GUI. Every perspective component has a &#8216;style&#8217; property where CSS properties can be attached.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-1.png" alt=""/></figure>



<p class="wp-block-paragraph">Ignition also lets developers create style classes that contain reusable groupings of styles. Perspective components can then reference a single style class or multiple style classes. Additional basics on style classes can be found in the Ignition User Guide.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-2.png" alt=""/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-3.png" alt=""/></figure>



<p class="wp-block-paragraph">The Ignition designer style GUI does an excellent job of organizing and easily exposing common CSS properties; however, The GUI is limited and doesn’t expose all possible <a href="https://www.w3schools.com/cssref/index.php" target="_blank">CSS properties</a>. The ‘properties’ dropdown under styles is more comprehensive. Any CSS property can also be added by manually adding a value.</p>



<p class="wp-block-paragraph">It&#8217;s important to note that the added styles have their keys in camelCase rather than kebab-case. Kebab-case is the formatting for generic CSS; however, Ignition uses React and Javascript, which require the camelCase formatting.</p>



<p class="wp-block-paragraph">So, what functionality and styling are we missing out on if Ignition Developers only use the CSS properties presented through the Style GUI in the designer? The styling possibilities are limitless, but I&#8217;ll showcase a couple powerful styling properties we can add to any Ignition Perspective Component.</p>



<h2 class="wp-block-heading" id="h-the-transform-property">The Transform Property</h2>



<p class="wp-block-paragraph">The transform CSS property allows developers to change the position, orientation, scale, and viewing perspective of components on screen in a multitude of ways. The full capabilities on the transform property can be read about in other <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/transform" target="_blank">resources</a>. We&#8217;ll keep it fairly simple for now.</p>



<p class="wp-block-paragraph">For this demo, I’ve added a Flex Row to the center of my view. I’ve changed the ‘justify’ property to space-evenly so that it keeps some room in between the buttons. I also added a background color solely for the demo to give some context for where the flex row is. An important property I did change was the overflow, which I set&nbsp;to visible. In this case, these transforms extend past the bounding box of the flex row. Changing the overflow to visible keeps the buttons from being cut off.</p>



<p class="wp-block-paragraph">The demo has 5 buttons added inside the flex row. The first button has no transform applied to it but the other four do.&nbsp;To add the transform property, select the button and go to its style. Click the plus icon and then select value from the dropdown. Change the key of the value to ‘transform.’&nbsp;The value can be any transform you want to add, following the transform property&#8217;s styling requirements.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-4.png" alt=""/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-5.png" alt=""/></figure>



<p class="wp-block-paragraph">The transformed buttons have the following transform properties:</p>



<ul class="wp-block-list">
<li>rotate(30deg)</li>



<li>translateY(60px)</li>



<li>scale(1.5)</li>



<li>skew(10deg, 20deg)</li>
</ul>



<p class="wp-block-paragraph">Multiple transforms can be applied at the same time. For instance, the following transform property value will both scale and rotate the component.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/transform-value-1.png" alt=""/></figure>



<p class="wp-block-paragraph">Transforms don&#8217;t just need to be static either. You can leverage Ignition&#8217;s expression bindings. In another example, we can add a check box to a view and give it the style transform property with a binding.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-6.png" alt=""/></figure>



<p class="wp-block-paragraph">The binding can map the selection of the checkbox to a scale transform applied to the checkbox itself. So, when the checkbox is checked, it scales to 1.5 and, when it is not checked, it scales to normal size.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-7.png" alt=""/></figure>



<p class="wp-block-paragraph">The end result is a checkbox that instantly grows and shrinks as it is selected/unselected. This changing transform can create more dynamic displays that allows designers to be more creative with our HMI&#8217;s. The transform is instantaneous and quite a shocking change to happen immediately, but there&#8217;s a remedy for that with the transition CSS property.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/toggle-my-size-1.png" alt=""/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-9.png" alt=""/></figure>



<h2 class="wp-block-heading" id="h-the-transition-property">The Transition Property</h2>



<p class="wp-block-paragraph">The transition property allows the animation of changing CSS properties. Full details and formatting of this property can be read about in other <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Transitions/Using_CSS_transitions" target="_blank">sources</a>. For these demonstrations, let’s add the transition property to the scaling checkbox.</p>



<ol class="wp-block-list">
<li>Select the checkbox and add the transition key to the style.</li>



<li>Set the value of transition to &#8216;transform 1s.&#8217;&nbsp;This is telling the transition to only apply to the transform property and to animate for 1 second.</li>
</ol>



<p class="wp-block-paragraph">That&#8217;s all that it needs&nbsp;to animate the transition.&nbsp;The new result is a growing and shrinking checkbox upon selection. The transition feels more natural and creates a pretty cool effect.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/toggle-3.png" alt=""/></figure>



<p class="wp-block-paragraph">We applied a transition to the transform property, but we also can apply transitions to a large number of other CSS properties. For instance, let&#8217;s try with a background color. First I&#8217;ll add a dynamic background color that changes from red to green based on whether the check box is selected.</p>



<p class="wp-block-paragraph">I start by adding the ‘backgroundColor&#8217; property to the style of the checkbox and then adding a binding that switches between red and green based on the &#8216;props.selected&#8217; property.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-10.png" alt=""/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-11_1.png" alt=""/></figure>



<p class="wp-block-paragraph">Now I&#8217;m ready to add a second transition to the checkbox. All I need to do is adjust the transition property to include the background-color changing over the course of 1 second. Separate multiple transitions with commas. Now the checkbox will also start to transition its background over the course of a second rather than instantaneously.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/Custom-CSS-in-Ignition-Perspective-12_1.png" alt=""/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/toggle-5.png" alt=""/></figure>



<p class="wp-block-paragraph">Transition doesn&#8217;t work with every CSS property, but it works with a large amount of them. You can determine which properties it works with through some simple searching online. Transitions can also include delays at their start as well as different animation timing functions. There are countless resources online to learn more about the transition property.</p>



<h2 class="wp-block-heading" id="h-in-conclusion">In Conclusion</h2>



<p class="wp-block-paragraph">The Transform and Transition CSS properties are powerful on their own, but the real power of CSS styling comes with unique and creative combination of all sorts of CSS styling together. Ignition exposes any possible CSS property to developers, but developers should still consider the full extent of CSS that we can use on the web. This blog is only scratching the surface on some of the more advanced CSS that can be added to your Ignition Perspective Projects. Ignition also allows direct CSS code to be written and used throughout Perspective projects either through <a href="https://docs.inductiveautomation.com/docs/8.1/ignition-modules/perspective/styles/creating-and-using-custom-perspective-themes" target="_blank" rel="noreferrer noopener">importing your own theme</a> or with the <a href="https://www.inductiveautomation.com/blog/ignition-8122-new-configuration-explorer-enhanced-svg-importer-and-css-stylesheet-resources" target="_blank">stylesheet</a> introduced in Ignition 8.1.22.</p>



<p class="wp-block-paragraph"><strong>Learn more about DMC&#8217;s&nbsp;<a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/hmi-and-scada-programming/ignition-programming">Ignition programming</a>&nbsp;expertise, and <a href="https://static.dmcinfo.com/contact">contact us</a> today for your next project.</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/17892/custom-css-in-ignition-perspective-adding-transforms-and-transitions/">Custom CSS in Ignition Perspective: Adding Transforms and Transitions</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Custom CSS in Ignition Perspective: Getting Started with the Stylesheets</title>
		<link>https://static.dmcinfo.com/blog/17916/custom-css-in-ignition-perspective-getting-started-with-the-stylesheets/</link>
		
		<dc:creator><![CDATA[Nicoli Liedtke]]></dc:creator>
		<pubDate>Wed, 11 Jan 2023 15:43:48 +0000</pubDate>
				<category><![CDATA[HMI and SCADA]]></category>
		<category><![CDATA[Ignition]]></category>
		<category><![CDATA[Manufacturing Automation & Intelligence]]></category>
		<guid isPermaLink="false">https://static.dmcinfo.com/blog/17916/custom-css-in-ignition-perspective-getting-started-with-the-stylesheets/</guid>

					<description><![CDATA[<p>Ignition Perspective is a premier graphical front-end environment in the SCADA world. It excels at allowing developers to create custom, sleek-looking HMIs. The styling for every button, text field, or image found on Perspective screens is the same styling language that powers the entire internet. Ignition has default styling for buttons, labels, etc; however,&#160;every style [&#8230;]</p>
<p>The post <a href="https://static.dmcinfo.com/blog/17916/custom-css-in-ignition-perspective-getting-started-with-the-stylesheets/">Custom CSS in Ignition Perspective: Getting Started with the Stylesheets</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Ignition Perspective is a premier graphical front-end environment in the SCADA world. It excels at allowing developers to create custom, sleek-looking HMIs.</p>



<p class="wp-block-paragraph">The styling for every button, text field, or image found on Perspective screens is the same styling language that powers the entire internet. Ignition has default styling for buttons, labels, etc; however,&nbsp;every style is configurable. Developers change colors, font sizes, padding, and many other CSS properties for all of the different types of components on Ignition Perspective views.</p>



<p class="wp-block-paragraph">Ignition Perspective introduces a Style Graphical User Interface (GUI) that displays a large amount of commonly used style properties in a single easy to use GUI. The Style GUI lets developers intuitively adjust all sorts of styles for components without having to learn any nitty-gritty CSS. Even experienced CSS developers can benefit from how seamlessly this GUI is built into Ignition Perspective&#8217;s development environment.</p>



<p class="wp-block-paragraph">Ignition also has a concept of ‘style classes’ that creates a grouping of style properties that can be applied to a component or several components across an entire Ignition Perspective project.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custon-css-in-ignition-perspective-stylesheets-1_1.png" alt="Graphical user interface, text, applicationDescription automatically generated"/></figure>



<p class="wp-block-paragraph">There are some limitations to Ignition’s Style GUI. The largest limitation is that it simply&nbsp;doesn’t encompass every CSS property possible on the web. Powerful properties like ‘Transform’ and ‘Transition’ are absent from the Style GUI. The Style GUI does allow for animations and CSS selectors (Hover, Active, etc.), but the Style GUI animations and selectors are more limited in their capabilities than with pure CSS.</p>



<p class="wp-block-paragraph">Adding your own CSS in Ignition has been possible for a long time through <a href="https://docs.inductiveautomation.com/docs/8.1/ignition-modules/perspective/styles/creating-and-using-custom-perspective-themes" target="_blank" rel="noreferrer noopener">adding your own custom theme</a>. Using your own custom theme requires a little bit of development overhead. Editing the CSS of your theme wasn’t really possible from the Designer.&nbsp;However, with the release of&nbsp;8.1.22 Ignition adding custom CSS has never been easier.</p>



<h2 class="wp-block-heading" id="h-introducing-the-stylesheet">Introducing the Stylesheet</h2>



<p class="wp-block-paragraph">The Stylesheet is a plain CSS file easily accessible from the Ignition Designer. To access the Stylesheet, you must be running Ignition 8.1.22 or later version. The Stylesheet must&nbsp;also be enabled in the project browser by right-clicking the Styles folder and enabling the Advanced Stylesheet.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custon-css-in-ignition-perspective-stylesheets-2_1.png" alt="Graphical user interface, applicationDescription automatically generated"/></figure>



<p class="wp-block-paragraph">Enabling the Stylesheet will add a stylesheet.css file to the styles folder. This file is where CSS can be directly added to your Ignition Project. It is important to note that CSS written here is only local to the current project where this stylesheet exists. The CSS written here will not exist across the entire gateway and only applies to the current project. Creating your own custom theme may be better suited for CSS applied across the entire gateway.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custon-css-in-ignition-perspective-stylesheets-3.png" alt="Graphical user interface, applicationDescription automatically generated"/></figure>



<p class="wp-block-paragraph">For now, let’s try making a CSS class that we can use in our Ignition project. For this example, we’ll make a class that rounds its corners of a button and makes the background and border green.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custon-css-in-ignition-perspective-stylesheets-4.png" alt="A picture containing textDescription automatically generated"/></figure>



<p class="wp-block-paragraph">We’ll create a CSS class by beginning with a period(.) to signify that is a class. The CSS class here is called ‘psc-roundedButton’, but throughout our Ignition project it will just be called ‘roundedButton’. We have to prepend all custom classes in the stylesheet with ‘psc-’ because Ignition automatically prepends any custom classes added to components with ‘psc-’. If we want to add give a button this ‘roundedButton’ class we can drop a button on a view and then give the button the ‘roundedButton’ class.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custon-css-in-ignition-perspective-stylesheets-5.png" alt="Graphical user interface, text, applicationDescription automatically generated with medium confidence"/></figure>



<p class="wp-block-paragraph">The button should now use the style specified by the ‘roundedButton’ class in the stylesheet. We can make more adjustments to the class in the style sheet as we want. For instance, let’s make the button a little more dynamic by reducing its opacity when hovered over.</p>



<p class="wp-block-paragraph">We can add the hover selector to the class that will reduce the opacity. Now the button provides some feedback to users when they hover over it.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custon-css-in-ignition-perspective-stylesheets-6.png" alt="Graphical user interface, text, applicationDescription automatically generated"/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/button-click-1_1.gif" alt="arrow clicking a button"/></figure>



<p class="wp-block-paragraph">So far, the class we’ve made doesn’t do anything that Style Classes and the Style GUI can’t already do. Now, let’s jump into something that can’t be done with just Style Classes and the Style GUI. Let’s integrate some properties not found in the Style GUI and discussed&nbsp;in our blog,&nbsp;<strong><a href="https://static.dmcinfo.com/latest-thinking/blog/id/10406/custom-css-in-ignition-perspective-adding-transforms-and-transitions">Custom CSS in Ignition Perspective: Adding Transforms and Transitions</a></strong>.</p>



<p class="wp-block-paragraph">Let’s add both a transition and a transform to this CSS style class. Let’s&nbsp;have the button scale larger and translate upwards when we hover over it,&nbsp;and then let&#8217;s have it return to normal when we stop hovering. We can do this with just two more lines of CSS.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custom-css-in-ignition-perspective-stylesheets-8.png" alt="Graphical user interface, text, applicationDescription automatically generated"/></figure>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/click-button-grow.gif" alt="mouse click button grow"/></figure>



<p class="wp-block-paragraph">We added a transition to the general class to transition the opacity and transform properties of the button. Then, in the hover selector, we added a transform that both scales the button bigger and moves it upward in the y-direction 10 pixels. This is only one of an infinite number of ways we could style a button with CSS classes, and the limit is really just your imagination.</p>



<p class="wp-block-paragraph">Let’s provide one more example of making a custom CSS class using some properties that aren’t built into Ignition’s Style GUI. Let’s&nbsp;make a class that will gray scale and blur an image until we hover over it. Once we’re hovering over it, we will show the original image.</p>



<p class="wp-block-paragraph">Start by making a ‘specialImage’ class and adding the filter property. The filter property can do a variety of things, but here we are adding a Gaussian blur and grayscale. We’ll also add a transition to the filter property. Then, we need to add a hover selector that sets the filter to none. You can see all of the CSS code below.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/custom-css-in-ignition-perspective-stylesheets-10.png" alt="TextDescription automatically generated with medium confidence"/></figure>



<p class="wp-block-paragraph">The result is an image that doesn’t show any detail or draw attention until the user hovers over it, and then they can see the full details of the image.</p>



<figure class="wp-block-image"><img decoding="async" src="https://static.dmcinfo.com/wp-content/uploads/2025/05/DMC-logo-click.gif" alt="DMC logo click"/></figure>



<p class="wp-block-paragraph">The ‘filter’ CSS property is a property that isn’t accessible from the Ignition Style GUI, so this is another example of functionality that’s currently only possible with pure CSS.</p>



<p class="wp-block-paragraph">CSS has pretty endless possibilities to experiment with and integrate into your Ignition projects. The internet has a plethora of CSS guides, examples, and inspiration to use for trying new CSS effects.</p>



<p class="wp-block-paragraph"><strong>Learn more about DMC&#8217;s <a href="https://static.dmcinfo.com/services/manufacturing-automation-and-intelligence/hmi-and-scada-programming/ignition-programming">Ignition programming</a> expertise and <a href="https://static.dmcinfo.com/contact/" type="page" id="411">contact us</a> today for your next project.</strong></p>
<p>The post <a href="https://static.dmcinfo.com/blog/17916/custom-css-in-ignition-perspective-getting-started-with-the-stylesheets/">Custom CSS in Ignition Perspective: Getting Started with the Stylesheets</a> appeared first on <a href="https://static.dmcinfo.com/">DMC, Inc.</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
