简体   繁体   English

在转盘上放置div

[英]Placing a div on top of carousel

I have a carousel and i want to put a static div on top of it with the carousel sliding behind it, but the div won't appear and i want it to be centered, the static div is a circle with an image inside it, here is my code: 我有一个轮播,我想在其顶部放置一个静态div,轮播在其后面滑动,但是该div不会出现,并且我希望它居中,静态div是一个带有图像的圆形,这是我的代码:

 .circle{ background-color: #FFF; width: 350px; height: 350px; position: absolute; opacity: 0.8; border-radius: 100%; background-image: url('http://via.placeholder.com/50x50'); background-size: 350px; background-repeat: no-repeat; background-position: 50%; margin: 0 auto; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <!-- Latest compiled and minified JavaScript --> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <div id="mycarousel" class="carousel slide" data-ride="carousel"> <ol class="carousel-indicators"> <li data-target="#mycarousel" data-slide-to="0" class="active"></li> <li data-target="#mycarousel" data-slide-to="1"></li> <li data-target="#mycarousel" data-slide-to="2"></li> </ol> <div class="carousel-inner"> <div class="item active"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="circle"> </div> </div> <a class="left carousel-control" href="#mycarousel" data-slide="prev"> <span class="glyphicon glyphicon-chevron-left"></span> <span class="sr-only">Previous</span> </a> <a class="right carousel-control" href="#mycarousel" data-slide="next"> <span class="glyphicon glyphicon-chevron-right"></span> <span class="sr-only">Next</span> </a> </div> 

use this css class. 使用此CSS类。

border-radius: 50%; 边界半径:50%; [For Circle] [对于圈子]

top: 0; 最高:0; [to pull to top.] [拉到顶部。]

left: calc (50% - 175px); 左:calc(50%-175px); [here 175px because your div width is 350px put half of your div length here to make centered;] [此处为175像素,因为您的div宽度为350像素,因此将div长度的一半放在此处居中;]

background: #444; 背景:#444; [is for checking, remove it.] [用于检查,将其删除。]

 .circle{ background-color: #FFF; width: 350px; height: 350px; position: absolute; opacity: 0.8; border-radius: 50%; background-image: url('http://via.placeholder.com/50x50'); background-size: 350px; background-repeat: no-repeat; background-position: 50%; top: 0; left: calc(50% - 175px); background: #444; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <!-- Latest compiled and minified JavaScript --> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <div id="mycarousel" class="carousel slide" data-ride="carousel"> <ol class="carousel-indicators"> <li data-target="#mycarousel" data-slide-to="0" class="active"></li> <li data-target="#mycarousel" data-slide-to="1"></li> <li data-target="#mycarousel" data-slide-to="2"></li> </ol> <div class="carousel-inner"> <div class="item active"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="circle"> </div> </div> <a class="left carousel-control" href="#mycarousel" data-slide="prev"> <span class="glyphicon glyphicon-chevron-left"></span> <span class="sr-only">Previous</span> </a> <a class="right carousel-control" href="#mycarousel" data-slide="next"> <span class="glyphicon glyphicon-chevron-right"></span> <span class="sr-only">Next</span> </a> </div> 

You need to do a few things. 您需要做一些事情。

You need to set top and left as it is an absolutely positioned element. 您需要设置topleft因为它是绝对定位的元素。 Also set the position of item to relative so the circle is positioned absolutely within the item. 还要将项目的position设置为relative以便圆绝对位于项目内。

Then use transform: translate(-50%, -50%); 然后使用transform: translate(-50%, -50%); to center this in the middle of the item . 将此居中放置在item的中间。

see updated code and demo below. 请参阅下面的更新的代码和演示。

  .item { position: relative; } .circle { background-color: #FFF; width: 150px; height: 150px; position: absolute; opacity: 0.8; border-radius: 100% ; background: red; background-size: 350px; background-repeat: no-repeat; margin: 0 auto; top:50%; left: 50%; transform: translate(-50% , -50% ); } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <div id="mycarousel" class="carousel slide" data-ride="carousel"> <ol class="carousel-indicators"> <li data-target="#mycarousel" data-slide-to="0" class="active"></li> <li data-target="#mycarousel" data-slide-to="1"></li> <li data-target="#mycarousel" data-slide-to="2"></li> </ol> <div class="carousel-inner"> <div class="item active"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="circle"> </div> </div> <a class="left carousel-control" href="#mycarousel" data-slide="prev"> <span class="glyphicon glyphicon-chevron-left"></span> <span class="sr-only">Previous</span> </a> <a class="right carousel-control" href="#mycarousel" data-slide="next"> <span class="glyphicon glyphicon-chevron-right"></span> <span class="sr-only">Next</span> </a> </div> 

Move the .circle div outside of the .carousel-inner and then give it left:0; 将.circle div移动到.carousel-inner之外,然后将其左移:0; right:0; 对:0; to center it and a z-index value of 16 (the dot indicators are 15) to render above the slider. 使其居中,z-index值为16(点指示器为15)以在滑块上方进行渲染。

 .circle{ width: 150px; height: 150px; position: absolute; opacity: 0.8; border-radius: 100%; background-color: red; margin: 0 auto; left: 0; right: 0; z-index: 16; } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <!-- Latest compiled and minified CSS --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> <!-- Latest compiled and minified JavaScript --> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script> <div id="mycarousel" class="carousel slide" data-ride="carousel"> <div class="circle"></div> <ol class="carousel-indicators"> <li data-target="#mycarousel" data-slide-to="0" class="active"></li> <li data-target="#mycarousel" data-slide-to="1"></li> <li data-target="#mycarousel" data-slide-to="2"></li> </ol> <div class="carousel-inner"> <div class="item active"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> <div class="item"> <img src="http://via.placeholder.com/510x150"> </div> </div> <a class="left carousel-control" href="#mycarousel" data-slide="prev"> <span class="glyphicon glyphicon-chevron-left"></span> <span class="sr-only">Previous</span> </a> <a class="right carousel-control" href="#mycarousel" data-slide="next"> <span class="glyphicon glyphicon-chevron-right"></span> <span class="sr-only">Next</span> </a> </div> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM