在其他元素上进行输入显示
Making input display over other elements
我目前正在使用Bootstrap创建一个网站,问题是在响应式小显示菜单上,我想使搜索输入显示在其他事情上,但我没有这样做。我正在使用jQuery。
预期的用途是,当按下搜索图标按钮,它显示隐藏的输入在其他元素的全尺寸可用,再次点击按钮,使其消失,但我不能想出一个办法,如果不给100%的宽度的形式,但它崩溃的布局。我在链接一个例子来启发它。此外,这些按钮和表单只在小分辨率下可见。
HTML <nav class="navbar navbar-default">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<a class="navbar-brand" href="#">TEST SITE</a>
<form id="form-search" class="navbar-form navbar-collapse visible-xs pull-right" role="search">
<div class="input-group">
<input type="text" class="form-control" placeholder="Buscar">
<span class="input-group-btn">
<button class="btn btn-default" type="button"><span class="glyphicon glyphicon-search"</span></button>
</span>
</div>
</form>
<button id="colapsador" type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<button id="navi-btn" type="button" class="visible-xs btn btn-default pull-right">
<span class="glyphicon glyphicon-map-marker"></span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<div>
<ul class="nav navbar-nav">
<li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">Separated link</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">One more separated link</a></li>
</ul>
</li>
</ul>
</div>
<div>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">Separated link</a></li>
</ul>
</li>
</ul>
</div>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<div class="container">
<div class="row">
<div class="col-lg-12">
<h1>Some site</h1>
<p>Some text</p>
</div>
</div>
</div>
Javascript $('#form-search button').click(function(){
$(this).css({
'border-top-left-radius':'0',
'border-bottom-left-radius':'0'
}).addClass('active');
$('#form-search').css('width','100%');
$('#form-search .form-control').css({
'display':'inherit',
'width':'100%',
});
});
CSS #form-search{
border: none;
margin-top: -2px;
margin-right: -0.5em;
width:4.8em;
z-index: 6;
}
#form-search .form-control{
display:none;
z-index: 100;
}
#form-search .input-group-btn button{
border-top-left-radius:4px;
border-bottom-left-radius: 4px;
}
#navi-btn{
margin-top: 8px;
margin-right: 0.5em;
z-index: 1;
}
#colapsador{
margin-right: 0.5em;
z-index: 1;
}
z-index属性似乎不工作,也如果有人能启发我如何恢复原来的css属性时再次点击按钮会很好,但这不是我的主要问题,我可以搜索它。
http://jsfiddle.net/8vv0dgLc/更新小提琴。
我不确定,但尝试将width
从100%更改为50%:
$('#form-search').css('width','50%');
我想这就解决了问题,希望能有所帮助。
z-index属性似乎不起作用
对于z-index,需要在
position:absolute
我终于做到了,只是小细节,动画仍然缺失,但这是完美的:)
检查更新的小提琴
http://jsfiddle.net/8vv0dgLc/2/HTML代码:<nav class="navbar navbar-default">
<div class="container-fluid">
<!-- Brand and toggle get grouped for better mobile display -->
<div class="navbar-header">
<a class="navbar-brand" href="#">TEST SITE</a>
<form id="form-search" class="navbar-form navbar-collapse visible-xs pull-right" role="search">
<div class="input-group">
<input type="text" class="form-control" placeholder="Buscar">
<span class="input-group-btn">
<button class="btn btn-default" type="button"><span class="glyphicon glyphicon-search"</span></button>
</span>
</div>
</form>
<button id="colapsador" type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<button id="navi-btn" type="button" class="visible-xs btn btn-default pull-right">
<span class="glyphicon glyphicon-map-marker"></span>
</button>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
<div>
<ul class="nav navbar-nav">
<li class="active"><a href="#">Link <span class="sr-only">(current)</span></a></li>
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">Separated link</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">One more separated link</a></li>
</ul>
</li>
</ul>
</div>
<div>
<ul class="nav navbar-nav navbar-right">
<li><a href="#">Link</a></li>
<li class="dropdown">
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="#">Action</a></li>
<li><a href="#">Another action</a></li>
<li><a href="#">Something else here</a></li>
<li role="separator" class="divider"></li>
<li><a href="#">Separated link</a></li>
</ul>
</li>
</ul>
</div>
</div><!-- /.navbar-collapse -->
</div><!-- /.container-fluid -->
</nav>
<!-- Page Content -->
<div class="container">
<div class="row">
<div class="col-lg-12">
<h1>Some site</h1>
<p>Some text</p>
</div>
</div>
</div>
Javascript $('#form-search button').click(function(){
$('#form-search .form-control').toggle();
});
CSS #form-search{
border: none;
margin-top: -2px;
margin-right: -0.5em;
width:4.8em;
z-index: 6;
}
#form-search .form-control{
position:absolute;
display:none;
z-index: 100;
right:3em;
width:15em;
}
#form-search .input-group-btn button{
border-top-left-radius:4px;
border-bottom-left-radius: 4px;
}
#navi-btn{
margin-top: 8px;
margin-right: 0.5em;
z-index: 1;
}
#colapsador{
margin-right: 0.5em;
z-index: 1;
}
相关文章:
- 根据输入显示窗体
- 无法根据用户在编辑窗口中的输入显示/隐藏jtable jquery字段
- 仅显示一条通用消息,而不是每个输入显示一条
- 如何从文本区域输入显示回车
- HTML 文本输入 * “值”;以不同的文本输入显示
- 轻量级 Javascript 表过滤器,以最少的字符输入显示结果
- 根据选定的单选按钮输入显示/隐藏 DIV
- 将表单输入显示为样式化字符串-Javascript
- 纸张输入显示输入和标签在彼此的顶部
- nvd3图表的csv输入显示错误(与时间格式有关)
- 输入显示不同的值在ng模型
- 在其他元素上进行输入显示
- 输入显示所有建议和强制选择建议
- 如何使输入显示在输出上
- 编程网页的建议,其中用户输入显示选定的图像
- 如何使两个不同的范围滑块输入显示相同的值,每当用户更新其中一个
- 为不同的用户输入显示不同的正则表达式消息
- 在Code Behind/ASP.net中基于用户输入显示模态对话框/确认框
- 如何使用预先输入显示图像.js
- Javascript:根据用户输入显示随机图像