Actualización de nuevo: estoy cerrando esta pregunta seleccionando la respuesta principal para evitar que las personas agreguen respuestas sin comprender realmente la pregunta. En realidad, no hay forma de hacerlo con la funcionalidad integrada sin usar grid o agregar CSS adicional. Las cuadrículas no funcionan bien si se trata de help-block
elementos que necesitan ir más allá de una entrada breve, por ejemplo, pero son 'incorporados'. Si ese es un problema, recomiendo usar clases css adicionales que puede encontrar en la discusión BS3 aquí . Ahora que BS4 está fuera, es posible usar los estilos de tamaño incluidos para administrar esto, por lo que esto no será relevante por mucho más tiempo. Gracias a todos por los buenos comentarios sobre esta popular pregunta SO.
Actualización: Esta cuestión sigue abierta, ya que se trata de una función de la funcionalidad en BS para gestionar el ancho de entrada sin tener que recurrir a la red (a veces tienen que ser gestionados de forma independiente). Ya uso clases personalizadas para administrar esto, por lo que este no es un tutorial sobre CSS básico. La tarea está en la lista de discusión de características BS y aún no se ha abordado.
Pregunta original: ¿ Alguien descubrió una forma de administrar el ancho de entrada en BS 3? Actualmente estoy usando algunas clases personalizadas para agregar esa funcionalidad, pero es posible que me haya perdido algunas opciones no documentadas.
Los documentos actuales dicen que se debe usar .col-lg-x, pero eso claramente no funciona, ya que solo se puede aplicar al contenedor div que luego causa todo tipo de problemas de diseño / flotación.
Aquí hay un violín. Extraño es que en el violín ni siquiera puedo cambiar el tamaño del grupo de formularios.
<form role="form" class="row">
<div class="form-group col-lg-1">
<label for="code">Name</label>
<input type="text" class="form-control">
</div>
<div class="form-group col-lg-1 ">
<label for="code">Email</label>
<input type="text" class="form-control input-normal">
</div>
<button type="submit" class="btn btn-default">Submit</button>
</form>
</div>
fuente
Respuestas:
Lo que quieres hacer es ciertamente posible.
Lo que desea es ajustar cada 'grupo' en una fila, no todo el formulario con solo una fila. Aquí:
El NUEVO jsfiddle que hice: NUEVO jsfiddle
Tenga en cuenta que en el nuevo violín, también he agregado 'col-xs-5' para que también pueda verlo en pantallas más pequeñas; eliminarlos no hace ninguna diferencia. Pero tenga en cuenta que en sus clases originales, solo está usando 'col-lg-1'. Eso significa que si el ancho de la pantalla es más pequeño que el tamaño de consulta de medios 'lg', entonces se usa el comportamiento de bloque predeterminado. Básicamente, solo aplicando 'col-lg-1', la lógica que está empleando es:
Consulte el sistema de cuadrícula Bootstrap 3 para obtener más información. Espero haber sido claro, de lo contrario, hágamelo saber y elaboraré.
fuente
En Bootstrap 3
Simplemente puede crear un estilo personalizado:
Luego agréguelo para formar controles de esta manera:
De esta manera, no tiene que poner marcas adicionales para el diseño en su HTML.
fuente
ASP.net MVC vaya a Content- Site.css y elimine o comente esta línea:
fuente
Creo que necesitas envolver las entradas dentro de a
col-lg-4
, y luego dentro deform-group
y todo queda contenido en aform-horizontal
...Demostración en Bootply: http://bootply.com/78156
EDITAR: de los documentos de Bootstrap 3 ..
Entonces, otra opción es establecer un ancho específico usando CSS:
O aplique el
col-sm-*
al 'grupo de formularios'.fuente
Los documentos actuales dicen que use .col-xs-x, no lg. Luego lo intento en violín y parece funcionar:
http://jsfiddle.net/tX3ae/225/
para mantener el diseño, tal vez pueda cambiar dónde coloca la clase "fila" de esta manera:
http://jsfiddle.net/tX3ae/226/
fuente
Agregue la clase a form.group para restringir las entradas
fuente
Si está utilizando la plantilla Master.Site en Visual Studio 15, el proyecto base tiene "Site.css" que ANULA el ancho de los campos de control de formulario.
No pude hacer que el ancho de mis cuadros de texto sea más ancho que aproximadamente 300 px de ancho. Probé TODO y nada funcionó. Descubrí que hay una configuración en Site.css que causaba el problema.
Deshágase de esto y puede obtener control sobre los anchos de campo.
fuente
Sé que este es un hilo viejo, pero experimenté el mismo problema con un formulario en línea, y ninguna de las opciones anteriores resolvió el problema. Así que arreglé mi formulario en línea de la siguiente manera:
Esa fue mi solución. Bit hacky hack, pero hizo el trabajo para un formulario en línea.
fuente
Puede agregar el atributo de estilo o puede agregar una definición para la etiqueta de entrada en un archivo css.
Opción 1: agregar el atributo de estilo
Opción 2: definición en CSS
Puedes cambiar el 100px en auto
Espero poder ayudar
fuente
En Bootstrap 3
http://getbootstrap.com/css/#forms-example
Parece que, en algunos casos, tenemos que establecer manualmente el ancho máximo que queremos para las entradas.
De todos modos, tu ejemplo funciona. Simplemente verifíquelo con una pantalla grande, para que pueda ver que el nombre y los campos de correo electrónico están obteniendo el 2/12 de los con (col-lg-1 + col-lg-1 y tiene 12 columnas). Pero si tiene una pantalla más pequeña (simplemente cambie el tamaño de su navegador), las entradas se expandirán hasta el final de la fila.
fuente
No tienes que renunciar a css simple :)
fuente
Si está buscando simplemente reducir o aumentar el ancho de los elementos de entrada de Bootstrap a su gusto, lo usaría
max-width
en el CSS.Aquí hay un ejemplo muy simple que creé:
Establecí el ancho máximo de todo el formulario en 500 px. De esta manera, no necesitará usar ninguno del sistema de cuadrícula de Bootstrap y también mantendrá la forma receptiva.
fuente
También tengo problemas con el mismo problema, y esta es mi solución.
Fuente HTML
Cubra el código de entrada con otra clase div
Fuente CSS
dar cualquier ajuste de ancho o margen en la clase div cubierta.
El ancho de entrada de Bootstrap siempre es predeterminado como 100%, por lo que el ancho sigue ese ancho cubierto.
Esta no es la mejor manera, pero es la solución más fácil y única que resolví el problema.
Espero que esto haya ayudado.
fuente
No sé por qué todos parecen pasar por alto el archivo site.css en la carpeta Contenido. Mire la línea 22 en este archivo y verá las configuraciones para controlar la entrada. Parece que su sitio no hace referencia a esta hoja de estilo.
Agregué esto:
input, select, textarea { max-width: 280px;}
a tu violín y funciona bien.
Nunca debe actualizar bootstrap.css o bootstrap.min.css. Hacerlo lo configurará para que falle cuando bootstrap se actualice. Es por eso que se incluye el archivo site.css. Aquí es donde puede realizar cambios en el sitio que aún le brindarán el diseño receptivo que está buscando.
Aquí está el violín con él funcionando
fuente
Agregue y defina términos para el
style=""
campo de entrada, esa es la forma más fácil de hacerlo: Ejemplo:fuente
Bootstrap usa la clase 'entrada-formulario' para controlar los atributos de 'campos de entrada'. Simplemente, agregue su propia clase de 'entrada de formulario' con el ancho, borde, tamaño de texto, etc. deseados en su archivo CSS o sección de encabezado.
(o bien, agregue directamente el código en línea size = '5' en los atributos de entrada en la sección del cuerpo).
fuente
Bootstrap 3 Logré un buen diseño de formulario receptivo usando lo siguiente:
fuente