Ndijo
Sé que esta pregunta se ha hecho al menos tres veces antes, pero la respuesta que vi no era lo que estaba buscando. Estoy buscando aumentar el ancho del campo de autocompletar que genera el arranque de Twitter con su función de escritura anticipada. He estado leyendo que se extiende para cubrir todo el texto en el campo. es decir, cuanto más largo sea el texto, más ancho será el campo de autocompletar. Sin embargo, me gustaría que fuera un span6 porque así de amplio es mi campo de búsqueda. ¿Algunas ideas? He visto algunas respuestas de jquery pero no pude seguirlas.
Michael Watson dio lo que creo que es la respuesta más simple en su comentario.
.twitter-typeahead { width: 100%; }
Actualización #1: Basado en los comentarios a continuación (gracias Steve, Vishi), haga lo mismo para .tt-hint
, .tt-input
, .tt-dropdown-menu
.
Actualización #2: mlissner informa que .tt-dropdown-menu
es ahora .tt-menu
por lo que el resultado final es
.twitter-typeahead, .tt-hint, .tt-input, .tt-menu { width: 100%; }
-
Tuve que hacer lo mismo para
.tt-hint
también, pero esto funcionó para mí.–Steve
15 mayo 2014 a las 18:51
-
Tuve que hacer que el ancho de algunas clases más fuera del 100%. Esto funcionó para mí.
.twitter-typeahead, .tt-hint, .tt-input, .tt-dropdown-menu { width: 100%; }
– vma
7 mayo 2015 a las 16:10
-
Yo creo
.tt-dropdown-menu
es ahora.tt.-menu
entonces lo nuevo es:.twitter-typeahead, .tt-hint, .tt-input, .tt-menu { width: 100%; }
. Qué lío es esto.– mlissner
2 de noviembre de 2015 a las 5:50
-
Necesitará usar
!important
para anular otros estilos en mi caso (estoy usando la interfaz de usuario semántica)– MK Young
16 de enero de 2016 a las 16:23
Bajo Jobsen
El menú desplegable es un ul con las clases. typeahead
dropdown-menu
podrías usar CSS para establecer su ancho:
.dropdown-menu
{
width: .... px;
}
El ancho de span6 no es estático, por lo que necesitará algunas consultas de medios para que responda.
Para Arranque 3 la función de escritura anticipada se elimina de TB3 en lugar de usar https://github.com/twitter/typeahead.js/. necesitarás algo CSS adicional para integrarlo con Bootstrap de Twitter.Deberá cargar CSS adicional para obtener el typeahead.js
menú desplegable para adaptarse al tema predeterminado de Bootstrap. Probar LESS de Bootstrap extendido o si está buscando una versión más extendida, intente: typeahead.js-bootstrap3.less.
El menú desplegable con está configurado con la clase .tt-dropdown-menu ahora. En lugar de cambiar el CSS, también puede intentar establecer el ancho dinámico. Con escritura anticipada una clase de su etiqueta de entrada de escritura anticipada:
$('.typeahead').typeahead({})
on('typeahead:opened',function(){$('.tt-dropdown-menu').css('width',$('.typeahead').width() + 'px');});
-
Gracias. Use $(‘#yourinput’).outerWidth() para que coincida con el ancho real de entrada
– Romain Bruckert
28 de septiembre de 2013 a las 10:23
-
esta solución con .twitter-typeahead{ ancho: 100%; } trabajó para mi
– Michael L Watson
20 de noviembre de 2013 a las 13:13
-
@MichaelLWatson +1 por la solución simple y directa.
– Tren
23 de noviembre de 2013 a las 1:15
Para hacer que el menú desplegable coincida con el ancho del campo, querrá algo como esto:
$(document).on('typeahead:opened', function(event, datum) {
var width = $(event.target).width();
$('.tt-dropdown-menu').width(width);
});
Pequeña mejora en lo anterior usando event.target y un detector de documentos global.
dosteesbrett
Estoy usando Bootstrap 3.2.0 con typeahead.js-bootstrap3.less y anidó la entrada en divs como este:
<div class="form-group">
<label>my label</label>
<div class="col-md-4">
<div class="input-group tt-input-group">
<input id="mytypeahead" class="form-control" />
</div>
</div>
</div>
También necesitaba agregar esto a mi css:
.tt-input-group {
width: 100%;
}
Aquí hay una solución CSS pura:
Ya que .dropdown-menu
se posiciona absoluto, agregando position: relative;
al div que envuelve su uib-typeahead
campo de entrada y configuración width: 100%;
para usted .dropdown-menu
lo arreglará
Tu CSS se vería así:
.typeahead-search {
position: relative;
}
.dropdown-menu {
width: 100%;
}
-
Gracias funciona bien, excepto que el texto largo que se sugiere se muestra fuera del menú desplegable.
– Ahmed Al-Abdulaal
18 de marzo de 2019 a las 0:09
-
@AhmedAlAbdulaal Si necesita recortar su texto, agréguele esta clase
.overflow-ellipsis { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
– Joe McLean
19 de marzo de 2019 a las 16:19
candelabro
Esto es para versiones más nuevas:
.twitter-typeahead, .tt-menu
{
display: block !important;
}
-
Gracias funciona bien, excepto que el texto largo que se sugiere se muestra fuera del menú desplegable.
– Ahmed Al-Abdulaal
18 de marzo de 2019 a las 0:09
-
@AhmedAlAbdulaal Si necesita recortar su texto, agréguele esta clase
.overflow-ellipsis { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
– Joe McLean
19 de marzo de 2019 a las 16:19