Book Image

Primefaces Theme development

Book Image

Primefaces Theme development

Overview of this book

Developing stunning themes for web applications has never been easier! PrimeFaces delivers a powerful set of features that enables JSF developers to create and customize awesome themes on the web. It is very easy to use because it comes as a single JAR file and requires no mandatory XML configuration. With more than 30 out-of-the-box themes, jQuery integration, a mobile UI toolkit, Ajax Push technology, and much more, PrimeFaces takes JSF application development to a whole new level! This book is a hands-on example-rich guide to creating and customizing PrimeFaces themes using available tools. Beginning with creating a JSF project and integrating the PrimeFaces library, this book will introduce you to the features of theme components, how these are structured, and how PrimeFaces uses JQuery UI to apply a theme to your application. You will learn to examine and change the CSS rules and get creative by setting standard icons and adding new icons to them. You will use a combination of JavaScript and CSS to enhance your application with help of scheduler component and go on to adapt and package your custom theme so that it is compatible with the Resource Manager. Finally, you will explore PrimeFaces mobile apps, ensuring themes are compatible with your mobile applications best practices for theme design.
Table of Contents (18 chapters)
PrimeFaces Theme Development
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Changing the highlighted, active, and selected CSS rules


We are now going to examine the rules that define the dynamic visual cues. These cues are added by PrimeFaces to elements that can be highlighted, activated (when you click on them), and selected.

The following screenshot shows a menu that is highlighted:

The Chapter 2 menu is highlighted above its drop-down menu list. The gray background is nice enough, but it doesn't fit in with the blue theme. Therefore, we are going to change it. The same highlighted effect can be seen if you hover your mouse over the button.

So, we need to change the rules that define how components look when the mouse hovers over them. On searching for hover in theme.css, we find two definitions that we need to look for. The definitions are for a total of 14 rules, 6 of these define how components look and 8 of them define how anchors or links look.

The first definition looks like this:

.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state...