Font-Awesome Caret Up and Caret Down Stacked on Top of Each Other

Font-awesome caret up and caret down stacked on top of each other

You can achieve this using bootstrap grid system--

Working Example

<html>
<head> <script data-require="jquery@3.0.0" data-semver="3.0.0" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0/jquery.js"></script> <link data-require="bootstrap@3.3.7" data-semver="3.3.7" rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" /> <link data-require="fontawesome@4.4.0" data-semver="4.4.0" rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css" /> <script data-require="bootstrap@3.3.7" data-semver="3.3.7" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script> <link rel="stylesheet" href="style.css" /> <script src="script.js"></script> </head>
<body> <div class="col-md-6 col-xs-12"> <div class="pull-left row"> <div class="col-md-1 col-xs-1"> <div class="row"> <div class="col-md-12 col-xs-12"> <i class="fa fa-caret-up pull-left" aria-hidden="true"></i> </div> <div class="col-md-12 col-xs-12"> <i class="fa fa-caret-down pull-left" aria-hidden="true"></i> </div> </div> </div> <div class="col-md-8 col-xs-8"> <span style="padding-right: 8px">Worker</span> </div> </div> <div class="pull-left row"> <div class="col-md-1 col-xs-1"> <div class="row"> <div class="col-md-12 col-xs-12"> <i class="fa fa-caret-up pull-left" aria-hidden="true"></i> </div> <div class="col-md-12 col-xs-1"> <i class="fa fa-caret-down pull-left" aria-hidden="true"></i> </div> </div> </div> <div class="col-md-8 col-xs-8"> <span style="padding-right: 8px">Entitelment</span> </div> </div> <div class="pull-left row"> <div class="col-md-1 col-xs-1"> <div class="row"> <div class="col-md-12 col-xs-12"> <i class="fa fa-caret-up pull-left" aria-hidden="true"></i> </div> <div class="col-md-12 col-xs-12"> <i class="fa fa-caret-down pull-left" aria-hidden="true"></i> </div> </div> </div> <div class="col-md-8 col-xs-8"> <span style="padding-right: 8px">Request Date</span> </div> </div> </div> </body>
</html>

Place Font-awesome caret up and caret down stacked adjacent

Try this once..

.arrow i { font-size: 50px; margin: 2px 0; padding: 0 3px; line-height: 20px;}.arrow { line-height: 1px;}
<link href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet"/><div class="arrow up"><i class="fa fa-caret-up" aria-hidden="true"></i></div><div class="arrow down"><i class="fa fa-caret-down" aria-hidden="true"></i></div>

Toggle FontAwesome Carets on Click with jQuery

There are few minor typos in your examples:

  1. In https://jsfiddle.net/e74coz3f/ active-2 is used instead of active-1

  2. In https://jsfiddle.net/c12tvgdj/ second span is not closed and the above problem also exists

Also, jQuery is not correctly installed and I get Uncaught ReferenceError: $ is not defined in JSFiddle console.

Lastly, I think this could be implemented in few simpler ways, e.g. https://jsfiddle.net/c7hwv0a6/1/ or https://jsfiddle.net/a18ju6bv/.

FontAwesome caret down does not appear in ngClass

It is strange, when reverse is true, it removes fa class from fa-caret-down.

This works,

<span><i class="fa" [ngClass]="{'fa-caret-down':reverse,'fa-caret-up':!reverse}" ></i></span>

edit: also you can use,

<span><i [ngClass]="reverse ? 'fa fa-caret-down': 'fa fa-caret-up'" ></i></span>

swap fa-caret right to Caret down using css or jquery method

Adjusting pseudo-element

/* Additional */

.nav-side-menu ul li:not(.collapsed) .arrow:before {
content: "\f0d7";
}

Explanation:

Since the class .collapsed is added whenever an accordion item is not open, we can use this as a selector to target.

And since there is no class to target accordion items when they are opened we will do this is by using :not() - the negation pseudo-class selector; which, in this case, will select list-item elements which do not have the class .collapsed - implying that they are opened.

The :not() CSS pseudo-class represents elements that do not match a
list of selectors. Since it prevents specific items from being
selected, it is known as the negation pseudo-class.

Example

/* Selects any element that is NOT a paragraph */
:not(p) {
color: blue;
}

Source: :not() - CSS | MDN

Updated JSFiddle

.nav-side-menu {  overflow: auto;  font-family: verdana;  font-size: 12px;  font-weight: 200;  background-color: #2e353d;  position: fixed;  top: 0px;  width: 300px;  height: 100%;  color: #e1ffff;}.nav-side-menu .brand {  background-color: #23282e;  line-height: 50px;  display: block;  text-align: center;  font-size: 14px;}.nav-side-menu .toggle-btn {  display: none;}.nav-side-menu ul,.nav-side-menu li {  list-style: none;  padding: 0px;  margin: 0px;  line-height: 35px;  cursor: pointer;  /*        .collapsed{       .arrow:before{                 font-family: FontAwesome;                 content: "\f053";                 display: inline-block;                 padding-left:10px;                 padding-right: 10px;                 vertical-align: middle;                 float:right;            }     }*/}.nav-side-menu ul :not(collapsed) .arrow:before,.nav-side-menu li :not(collapsed) .arrow:before {  font-family: FontAwesome;  content: "\f0da";  display: inline-block;  padding-left: 10px;  padding-right: 10px;  vertical-align: middle;  float: right;}.nav-side-menu ul .active,.nav-side-menu li .active {  border-left: 3px solid #d19b3d;  background-color: #4f5b69;}.nav-side-menu ul .sub-menu li.active,.nav-side-menu li .sub-menu li.active {  color: #d19b3d;}.nav-side-menu ul .sub-menu li.active a,.nav-side-menu li .sub-menu li.active a {  color: #d19b3d;}.nav-side-menu ul .sub-menu li,.nav-side-menu li .sub-menu li {  background-color: #181c20;  border: none;  line-height: 28px;  border-bottom: 1px solid #23282e;  margin-left: 0px;}.nav-side-menu ul .sub-menu li:hover,.nav-side-menu li .sub-menu li:hover {  background-color: #020203;}.nav-side-menu ul .sub-menu li:before,.nav-side-menu li .sub-menu li:before {  font-family: FontAwesome;  content: "\f105";  display: inline-block;  padding-left: 10px;  padding-right: 10px;  vertical-align: middle;}.nav-side-menu li {  padding-left: 0px;  border-left: 3px solid #2e353d;  border-bottom: 1px solid #23282e;}.nav-side-menu li a {  text-decoration: none;  color: #e1ffff;}.nav-side-menu li a i {  padding-left: 10px;  width: 20px;  padding-right: 20px;}.nav-side-menu li:hover {  border-left: 3px solid #d19b3d;  background-color: #4f5b69;  -webkit-transition: all 1s ease;  -moz-transition: all 1s ease;  -o-transition: all 1s ease;  -ms-transition: all 1s ease;  transition: all 1s ease;}@media (max-width: 767px) {  .nav-side-menu {    position: relative;    width: 100%;    margin-bottom: 10px;  }  .nav-side-menu .toggle-btn {    display: block;    cursor: pointer;    position: absolute;    right: 10px;    top: 10px;    z-index: 10 !important;    padding: 3px;    background-color: #ffffff;    color: #000;    width: 40px;    text-align: center;  }  .brand {    text-align: left !important;    font-size: 22px;    padding-left: 20px;    line-height: 50px !important;  }}@media (min-width: 767px) {  .nav-side-menu .menu-list .menu-content {    display: block;  }}body {  margin: 0px;  padding: 0px;}

/* Additional */
.nav-side-menu ul li:not(.collapsed) .arrow:before { content: "\f0d7";}
<link href="//maxcdn.bootstrapcdn.com/font-awesome/4.2.0/css/font-awesome.min.css" rel="stylesheet"><script src="//code.jquery.com/jquery-1.11.0.min.js"></script><script src="//netdna.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script><script src="/dist/scripts.min.js"></script>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet">

<div class="nav-side-menu"> <div class="brand">Brand Logo</div> <div class="menu-list"> <ul id="menu-content" class="menu-content"> <li> <a href="#"> <i class="fa fa-dashboard fa-lg"></i> Dashboard </a> </li>
<li data-toggle="collapse" data-target="#products" class="collapsed active"> <a href="#"><i class="fa fa-gift fa-lg"></i> UI Elements <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="products"> <li class="active"><a href="#">CSS3 Animation</a></li> <li><a href="#">General</a></li> <li><a href="#">Buttons</a></li> <li><a href="#">Tabs & Accordions</a></li> <li><a href="#">Typography</a></li> <li><a href="#">FontAwesome</a></li> <li><a href="#">Slider</a></li> <li><a href="#">Panels</a></li> <li><a href="#">Widgets</a></li> <li><a href="#">Bootstrap Model</a></li> </ul>

<li data-toggle="collapse" data-target="#service" class="collapsed"> <a href="#"><i class="fa fa-globe fa-lg"></i> Services <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="service"> <li>New Service 1</li> <li>New Service 2</li> <li>New Service 3</li> </ul>

<li data-toggle="collapse" data-target="#new" class="collapsed"> <a href="#"><i class="fa fa-car fa-lg"></i> New <span class="arrow"></span></a> </li> <ul class="sub-menu collapse" id="new"> <li>New New 1</li> <li>New New 2</li> <li>New New 3</li> </ul>

<li> <a href="#"> <i class="fa fa-user fa-lg"></i> Profile </a> </li>
<li> <a href="#"> <i class="fa fa-users fa-lg"></i> Users </a> </li> </ul> </div></div>

Change mat-sort-header ascending/descending icon to custom like font-awesome caret-down/caret-up Angular 8

you need to make display: none to other icons that are used for default icon. then use add content as CSS before selector and use content to show your font awesome icon.

[aria-sort="descending"] {
::ng-deep .mat-sort-header-arrow {
.mat-sort-header-indicator {
&::before {
content: "<i class='fa fa-caret-down'>...</i>";
top: -1.0em;
position: absolute;
}
}
}
}

Live Example: Stackblitz

How to eliminate gap between Font Awesome Icon and paragraph in React JS?

When you need to move something around precisely, you can use the transform CSS property with a translate value. For example, here you could try

.products-select {
transform: translateY(15px);
}

That will move the products-select down by 15px, you can adjust the value to whatever you need. (there's also translateX for a horizontal translation.)

Font Awesome not working, icons showing as squares

According to the documentation (step 3), you need to modify the supplied CSS file to point to the font location on your site.

on hover for icon-caret-down

Why are you using :before it doesn't seem relevant. Simply add :hover

.icon-caret-down:before{
content:"▼";
font-family:'arial';
speak:none;
font-style:normal;
font-weight:normal;
font-variant:normal;
text-transform:none;
line-height:1;
-webkit-font-smoothing:antialiased;
vertical-align: baseline;
background-position: 0 0;
background-repeat: repeat;
margin-top: 0;
}
.icon-caret-down:hover{
color:red;
}

CLICK FOR DEMO


To hover when using :before use :hover:before

.icon-caret-down:before {
content:"\f0d7";
font-family:'fontawesome-alloy';
speak:none;
font-style:normal;
font-weight:normal;
font-variant:normal;
text-transform:none;
line-height:1;
-webkit-font-smoothing:antialiased;
vertical-align: baseline;
background-position: 0 0;
background-repeat: repeat;
margin-top: 0;
cursor:pointer;background:#27a7eb; color: #FFF; border-radius:50%; font-size:14px; height:auto;margin-left:5px;padding: 1px 4px; width:auto;
}
.icon-caret-down:hover:before {
background:#b00;
}

CLICK FOR DEMO




Related Topics



Leave a reply



Submit