Font Awesome buttons in APEX 4.2

how to create (author: Joost Drost)

inSystems Font Awesome

There is a nice blog from Dick Dral descibing how you can create links with a Font Awesome image. The same technique can be applied in Oracle APEX to create buttons. Because it’s APEX, the steps involved are somewhat different.

This blog post describes how to create a couple of templates in APEX that will allow you to add a button with a Font Awesome image declaratively. That is select the proper template and then add the css classes to the property field. In order to achieve this you need to create several objects in your APEX workspace (Note: this works with theme 25):

  • upload a css file so that you can reuse the style definitions
  • create a page template with a reference to the Font Awesome css
  • create a Button template that can display a Font Awesome image

The css file

The css file is named fa_page.css (it must be included in you page definition), and it contains the code below. The first class defines some general properties for the Font Awesome image and a default size of 30 px. The other classes only define a size.

.fa-icon {
border-radius: 3px;
color: #FFFFFF;
font-family: FontAweSome;
font-size: 20px;
height: 30px;
width: 30px;
line-height: 30px;
margin: auto;
margin-top:5px;
}
.fa60px {
font-size: 50px;
height: 60px;
width: 60px;
line-height: 60px;
}
.fa90px {
font-size: 80px;
height: 90px;
width: 90px;
line-height: 90px;
}
.fa120px {
font-size: 110px;
height: 120px;
width: 120px;
line-height: 120px;
}

The page template

Create a copy of a page template for example “One Level Tabs – Left Sidebar” and call it “fa One Level Tabs – Left Sidebar”. Edit the new page template: in the Definition/Header section add the following line in the <head> tag:

<link rel=”stylesheet” href=”#WORKSPACE_IMAGES#fa_page.css” type=”text/css”>

in the Cascading Style Sheet/File Urls section add line:

//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.min.css

The button Template

I couldn’t find a button template that displays a Font Awesome image properly, so a new one is needed. Create a copy of “Large Button – Icon Only” with name “fa Large Button – Icon Only”. Remove class “iconButton”, and add class “fa-icon”.

Apply on a page

Create a new page with a region. There is still one thing missing from the definitions and that is color. Edit the page, in the CSS/inline section add:

.fa-blue {
background-color: #3162A2;
}
.fa-orange {
background-color: #FC9C4B;
}
.fa-red {
background-color: #FF0000;
}
.fa-purple {
background-color: #292677;
}
.fa-green {
background-color: #6FAC04;
}

Now add some buttons to the region. Edit the button attributes, set Button style to Template Base Button, Button Template to “fa Large Button – Icon Only”. On the Font Awesome icons page, you can select the image you want and enter it’s name in the Button CSS Classes, add a color and a size and you’re done.

Share this

Contact

Heb je vragen of opmerkingen? Aarzel niet om contact op te nemen. Dat kan via de algemene contactgegevens, rechtstreeks met de genoemde contactpersoon op een van de detailpagina’s, of via onderstaande knop.

30 januari 2025

Oracle APEX & Generative AI

inSystems is door Oracle uitgenodigd voor een update over Oracle & AI, en over het toepassen van Generative AI binnen Oracle APEX in het bijzonder. De presentatie werd verzorgd door Charles Rodriquez St’Omer en Christian Rokitta.

31 januari 2025

Start Vincent van der Bijl

Wederom kunnen we verdere uitbreiding van ons Oracle team aankondigen. Vincent van der Bijl, een ervaren Oracle developer en ‘oude’ bekende van inSystems, komt per 1 maart as. onze gelederen versterken.

Opdrachten uitgevoerd voor

UBR Uitvoeringsorganisatie Bedrijfsvoering Rijk
Bank Mendes Gans
PC Uitvaart
Greenchoice
TenneT
CB Logistics
Arval BNP Paribas
Syntrus Achmea Real Estate & Finance
MN Services
GVB
Rabobank
Politie
Rendo
Nederlandse Spoorwegen
Allianz
Altran
JUVA
RIGD LOXIA
RAVU
SVB
Van Iperen Groeispecialisten
Multi Tank Card
Leaseplan
VION Food Group
TU Eindhoven
Stedin
Provincie Utrecht
inSystems KLM
VAA ICT Consultancy
Eneco
ING Bank
Thales
Universiteit Tilburg
IBM
Alphabet
Gemeente Apeldoorn
Ministerie van Economische Zaken, Landbouw & Innovatie
Rechtspraak
ASR Nederland
Darling
VTTI
Telegraaf Media Groep
WVDB Adviseurs Accountants
Ahold
CBR
DICTU
Ziggo
Gemeente Den Haag
Cannock
Gemeente Gouda
BMW
Oracle University
Fokker