Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!

Dashboard Design - QS CSS MasterClass (video)

No ratings
cancel
Showing results for 
Search instead for 
Did you mean: 
Dennis_Jaskowiak
Employee
Employee

Dashboard Design - QS CSS MasterClass (video)

Last Update:

Mar 3, 2021 2:02:32 PM

Updated By:

Dennis_Jaskowiak

Created date:

Mar 2, 2021 11:14:06 AM

Attachments

Welcome to the QS CSS MasterClass.

Motivation:

In my career as a PreSales, I need to create quite a few "user-appealing-applications". Sometimes users request a specific design or specific functions I need to implement in Qlik Sense. As we all know, Qlik Sense is built for simplicity & self-service and sometimes it could be challenging to achieve the desired result. But through the last couple of years, there were a lot of tips and tricks around using CSS to create completely new designs and functions to implement a better information design concept.

This is where the MasterClass starts. I have created an application that gathers a couple of these tricks and explains them more in detail. In addition to that, it is very easy to understand because you can see the result directly within a Qlik Sense App. If you think this sounds interesting, take a couple of minutes and join my short tour through the app. I won't cover all aspects in detail. This tour will give you an overview of the documented and used tricks within the app.

Content:

The following list will give you a brief overview of what topics are focused on the specific sheet within the app.

SheetDescription

Types of CSS implementationTypes of CSS implementation

You can add CSS definitions to your app by using themes or by using so-called "helper- objects". On this sheet, I will explain when you should use which option.
Hide (Helper-) ObjectsHide (Helper-) ObjectsA "helper-object" carries and injects the CSS definition on a specific sheet. This sheet helps you to hide this object and which objects can be used for it.

Colored Area BackgroundColored Area Background

This example demonstrates how to add better guidance to your dashboards by segmenting your background.

Filter Pane HighlightingFilter Pane Highlighting

Sometimes selections can be mandatory to consume a dashboard, or the creator likes to guide the user through the filter pane by using colored filter boxes. I show you how.
Hiding Button/OptionsHiding Button/OptionsHow to hide objects like the selection bar or elements within context-menus in case these functions shouldn't be used in the app or on this sheet? 
Using Background PicturesUsing Background PicturesAdding background-pictures to your dashboard can spice up the overall flavor of your dashboards. This can be used for segmentation or just to add some style.
Table modificationsTable modificationsIn this section, we will completely change the look and feel of a straight- and pivot table. 
Moving  ObjectsMoving ObjectsLet's create an illusion by just moving our objects closer together. After that, I'll look like we just have one.
Changing standard fontsChanging standard fontsThis sheet explains the easiest way to implement your own font by using a custom theme. It's just a few lines of code.
Custom Grid LayoutCustom Grid LayoutNo matching grid? This trick shows you how to create your own grid for a specific sheet by changing the metadata through Qlik Engine API Explorer.

 

Installation:

Under "Attachments" you can find the required package. The zip package includes a qvf file (Qlik Sense - CSS MasterClass V 1.0.qvf) and an extension (ShowHTMLfromMeasure). After importing the extension and app we need to change a quick configuration because the app has a different ID on your system now.

Open sheet called "Using Background Pictures". Normally this sheet has a background image. This gets referenced over the internal app-ID. Click on "Edit Sheet" and select the displayed CSS box ("CSS config HERE"). Navigate to submenu "Styles" and change the used app-ID in "Styles (CSS)" to your app-ID (displayed in the URL). Now you should see a background picture on this sheet.


app id.png

Usage:

Every sheet has the same structure. First, a description explains the trick in general and how it's working. On most of the sheets, you also get the explanation for the used CSS selectors. On the right-hand side, you can see the used code in a black code box. You can't copy the code from here. To do so enter the "edit-mode" and click on the "CSS config HERE" button. This object is always the "Helper-object" that carries the used and explained CSS code. Navigate to the "Styles" submenu and copy the code from the "Styles (CSS)" window. I recommend using an external editor to modify or review the CSS code.

In case you like to transfer the trick to your dashboard you just need to change the object ID. If you don't know how to find the object ID this will be explained on sheet "Hide (Helper-) Objects".

Comments
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Thanks @Ludo_ 

I just tried that, however that does not work neither as it moves dimension labels in wrong positions.

0 Likes
Ludo_
Partner - Contributor II
Partner - Contributor II

Try this instead @Lech_Miszkiewicz 

.qv-st-header-cell-search {visibility: hidden;}

 

0 Likes
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

still the same issue - see the white block?  It seems it has some sort of fixed width or inherited width...

Lech_Miszkiewicz_0-1630657422300.png

 

0 Likes
Ludo_
Partner - Contributor II
Partner - Contributor II

And this ?

 

.qv-st-header .lui-icon--search {visibility:hidden}

 

 

0 Likes
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

the same problem - I guess we are hitting wrong object, there must be some other object which controls that there is fixed allocated space for search cell. Hiding search cell does not mean its place is replaced with the header label ... Indieed we are hiding it, but instead we get empty space instead...

I keep will keep on digging around, but I was not able to identify parent object using just a DEV tool in chrome

0 Likes
Ludo_
Partner - Contributor II
Partner - Contributor II

Can you provide an example qvf file maybe ?

0 Likes
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

Looks like we cannot attach files in here, but you can just take any app , create table, put 1 or 2 dimensions and thats all what you need, right. 

And obviously multikpi object for CSS injection

 

 

Lech_Miszkiewicz_0-1630659048758.png

 

0 Likes
rarpecalibrate
Contributor III
Contributor III

Hi @Lech_Miszkiewicz,

Continuing on from @Ludo_ add the following to your css:

thead[tid="qv-st-header-top"] > tr {

background: <use your baby blue colour>;

}

If its for only one table then you will need to add what @NitinK7 mentioned.

 

 

0 Likes
Lech_Miszkiewicz
Partner Ambassador/MVP
Partner Ambassador/MVP

I think we are missing point here. I know how to make icon disapear - that is ok. However space reserved for icon stays there and cannot be regain and used for label instead. All options we tested are not changing the size of that space. 

So If i do what @rarpecalibrate suggested i will only colour that space in my background colour but it will be useless space still causing narrow columns to truncate labels, right?

0 Likes
rarpecalibrate
Contributor III
Contributor III

HI @Lech_Miszkiewicz ,

 

I understand your point, but there is no easy way to get the dimensions label to get wider and get rid of the search <th>.

You can try this:

th[tid="st.header.search"] {

position: absolute;

width: 0;

}

0 Likes
Contributors
Version history
Last update:
‎2021-03-03 02:02 PM
Updated by: