Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Clickable Link slipping down when clicked in the announcement widget

Mourad DBAICHI
Tera Contributor

Hello community,

 

Im working on a custom widget announcement on the employee center. 

The links in them slip down each time i click them 

1 - i click the link goes down

MouradDBAICHI_0-1726654100570.png

2- the second click works and redirects me to the url

MouradDBAICHI_1-1726654163925.png

 

i want the redirection to be directly upon the first click please.

 

HTML : 

<div id="anounces-carousel" class="carousel slide" data-ride="carousel" style="background:{{c.data.backgroundColor || c.options.default_background_color}}">

<div ng-if="c.announcements .length > 0" class="row">
<!-- Indicators -->
<ol class="carousel-indicators">
<li backgroundColor="{{a.displayStyle.backgroundColor}}" ng-if="c.announcements .length > 1" ng-repeat="a in c.announcements track by $index" data-target="#anounces-carousel" data-slide-to="{{$index}}" ng-class="{'active':$first}" class="navigation-btn" ng-click="switchColor(a)"></li>
</ol>

<div class="news-picto">
<img src="news_loxam.png" />
</div>


<div class="see-all-container barlow">
<div class="see-all">
<div class="left news-counter">
{{c.announcements .length}}
</div>
<div class="rightSide">
<div class="news-type">
${news1}
</div>
<div class="see-all-link">
</div>
</div>
</div>
</div>

<div class="hide-text-background" style="background:{{c.data.backgroundColor}}"> </div>

<!-- Wrapper for slides -->
<div class="carousel-inner">
<div ng-repeat="a in c.announcements" class="item" ng-class="{'active':$first}">

<div class="news-container">

<div class="news-content">

<div class="details-container barlow">

<div class="leftSide" style=""></div>

<div class="rightSide" style="">

<div class="news-title white">{{a.title}}</div>

<div class="news-details white" ng-bind-html="a.summary"></div>

</div>
</div>

 

</div>
</div>

</div>

</div>
</div>

<div class="row" ng-if="c.announcements .length == 0">
<div class="no-data white">
<img width="100px;" src="no-data.svg">
<!--<p>No announcement<br> for now</p>-->
${no_news1}
</div>
</div>

 

</div>

 

CSS

/* Hide scrollbar for Chrome, Safari and Opera */
.news-details::-webkit-scrollbar {
  display: none;
}
 
/* Hide scrollbar for IE, Edge and Firefox */
.news-details {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}
 
.item{
  animation:fadein 2.5s;
}
 
.carousel{
  overflow:hidden;
}
 
.no-data{
  height: 33rem;
  width: 100%;
  display: flex;
  text-align: center;
  justify-content: center;
  flex-direction: column;
  align-items: center;
}
 
 
.news-container{
  overflow:hidden;
}
 
#anounces-carousel {
border-radius: 8px;
  box-shadow: 0 .4rem .8rem 0 rgba(23, 40, 52, .08);
}
 
#anounces-carousel .row{
  height:33rem;
}
 
.news-content{
  display:flex;
  //animation: fadeIn 1s;
}
 
.news-picto{
  position: absolute;
  left: -10%;
  top: -20%;
  z-index:2;
}
 
.news-picto img{
  width: 360px;
}
 
 
.news-section{
  height: 100%;
  overflow:hidden;
  position: relative;
  display: flex;
  justify-content: center;
  //transition: all .5s linear;
}
 
.news-title{
  font-weight:700;
  font-size:30px;
}
 
.news-details{
  font-weight:300;
  max-height: 15rem;
  overflow: scroll;
}
 
.details-container{
  //width: 50%;
  //right: 5%;
  //position: absolute;
  //top: 60px;
  display: flex;
  //flex-direction: row;
}
 
.navigation-news{
  /* position: absolute; */
  display: flex;
  /* bottom: 16rem; */
  /* width: 100%; */
  /* right: 18%; */
  align-items: flex-end;
  margin-bottom: 20px;
}
 
.navigation-bar{
  background: lightgray;
  height: 0.5rem;
  width: 3rem;
  margin: 0.1rem;
}
 
.navigation-bar.active{
  background: #fff !important;
  height: 1rem !important;
}
 
.see-all-container{
  position: absolute;
  bottom: 10px;
  left:15px;
  z-index:2;
}
 
.see-all{
  display: flex;
  color: #fff;
  align-items: center;
}
 
.news-counter{
  font-size: 45px;
}
 
.see-all-container .rightSide{
  margin-top: -3rem;
  margin-left:3px;
  padding-top: 0;
}
 
.news-type{
  font-size: 18px;
  font-weight: 100;
}
 
.see-all-link{
  font-size: 1.5rem;
  margin-top: -0.6rem;
  text-decoration: underline;
}
 
.see-all-link a{
  color:#fff !important;
}
 
 
 
.green{
  background:#2AC489;
}
 
.white{
  color:#fff;
}
 
.brown{
  background:#C89999;
}
 
.carousel-control{
  visibility:hidden;
}
 
.carousel-indicators{
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
 
.carousel-indicators li{
  border-radius:0;
  background: lightgray;
  height: 0.5rem;
  width: 3rem;
  margin: 0.1rem;
  border:none;
}
 
.carousel-indicators li.active{
  background: #fff !important;
  height: 1rem !important;
}
 
.hide-text-background{
  height: 100%;
  width: 28rem;
  z-index: 1;
  position: absolute;
}
 
.leftSide{
  width:29rem;
  height: 30rem;
}
 
.rightSide{
  // width:36rem;
  width: 62%;
  padding-right:25px;
  padding-top:30px;
}
 
@media only screen and (max-width: 1300px) {
  .news-picto{
    left: -15%;
    top: -10%;
  }
 
  .news-picto img{
    width:25rem;
  }
 
  .leftSide{
    width:17rem;
  }
 
  .hide-text-background {
    width:16rem;
  }
 
  .rightSide{
    width: 71%;
  }
 
}
 
@media only screen and (max-width: 990px) {
  #anounces-carousel .row{
    height:35rem;
  }
 
  .news-picto{
    position: absolute;
    left: -10%;
    top: -20%;
    z-index:2;
  }
 
  .news-picto img{
    width: 360px;
  }
 
  .leftSide{
    width:29rem;
    height: 30rem;
  }
 
  .rightSide{
    // width:36rem;
    // width: 54rem;
      width: 100%;
    padding-right:15px;
    // padding-left: 290px;
    margin-left: 100px;
    padding-top:20px;
    padding-right: 23px;
  }
 
  .hide-text-background {
    width: 28rem;
  }
 
 
 
 
 
 
}
 
@media only screen and (max-width: 750px) {
  .news-picto{
    display:none;
  }
 
  .leftSide{
    width:0%;
  }
 
  .see-all-container .rightSide{
    padding-left:0.3rem;
  }
 
  .rightSide{
    width:100%;
    padding-right:50px;
    padding-left:50px;
    margin-left: 0px;
  }
 
  .hide-text-background {
    display:none;
  }
 
 
}
 
@keyframes fadein {
  from { opacity: 0; }
  to   { opacity: 1; }
}

 

 

Thanks in advance

 

0 REPLIES 0