Deshacerse de todas las esquinas redondeadas en Twitter Bootstrap


173

Me encanta Twitter Bootstrap 2.0: me encanta cómo es una biblioteca tan completa ... pero quiero hacer una modificación global para un sitio muy cuadrado, que es deshacerse de todas las esquinas redondeadas en Bootstrap ...

Eso es mucho CSS para atravesar. ¿Hay un cambio global, o cuál sería la mejor manera de encontrar y reemplazar todos los redondeados?


¿Desea eliminar todas o solo algunas esquinas redondeadas?
Andres Ilich

Si no puede modificar lo que tiene actualmente en su lugar, creé un archivo mod que tiene todos los radios de borde establecidos en 0: mkamyszek.tumblr.com/post/61791361233/…
Mark Kamyszek

1
ina, ¿mi respuesta funcionó para ti? ¿lo marcarías como correcto?
BrunoS

si. ¡gracias! .. por qué el voto negativo aunque
en

Respuestas:


331

Establezco el radio de borde de todos los elementos en "0" de esta manera:

* {
  border-radius: 0 !important;
}

Como estoy seguro de que no quiero sobrescribir esto más tarde, ¡solo lo uso! Importante.

Si no está compilando menos archivos, simplemente haga lo siguiente:

* {
  -webkit-border-radius: 0 !important;
     -moz-border-radius: 0 !important;
          border-radius: 0 !important;
}

En bootstrap 3, si lo está compilando, ahora puede establecer el radio en el archivo variables.less:

@border-radius-base:        0px;
@border-radius-large:       0px;
@border-radius-small:       0px;

En bootstrap 4, si lo está compilando, puede deshabilitar todo el radio en el _custom.scssarchivo:

$enable-rounded:   false;

2
Esta es una solución realmente agradable si está tratando de personalizar bootstrap sin tocar los archivos principales. ¡Gran respuesta!
Marty

44
Diablos, sí, rápido y sucio!
programador

1
Había usado esto * { -webkit-border-radius: 0 !important; -moz-border-radius: 0 !important; border-radius: 0 !important; }y está funcionando perfectamente para Bootstrap 3.2. Gracias por el arreglo hombre!
Todor Todorov

1
Esta solución no funciona para entradas <select> con estilo bootstrap. Probablemente debido al uso de -webkit-appearance: menulist.
johnsorrentino

Esta es probablemente una buena solución, pero no la mejor. Esto generará una gran cantidad de CSS redundante para cada elemento innecesariamente. Creo que esta es una de las mejores soluciones proporcionadas por @ymakux. Puedes probar esto
MB Parvez Rony

25

Descargue los .lessarchivos de origen y deje el .border-radius()mixin en blanco.


Esta es quizás la mejor solución en cuanto a eficiencia con el dominio del procesamiento de Bootstrap CSS.
Klewis

20

Si está utilizando la versión Bootstrap <3 ...

Con sass / scss

$baseBorderRadius: 0;

Con menos

@baseBorderRadius: 0;

Deberá establecer esta variable antes de importar el bootstrap. Esto afectará a todos los pozos y barras de navegación.

Actualizar

Si está utilizando Bootstrap 3 baseBorderRadius debe ser border-radius-base



18
code,
kbd,
pre,
.img-rounded,
.img-thumbnail,
.img-circle,
.form-control,
.btn,
.btn-link,
.dropdown-menu,
.list-group-item,
.input-group-addon,
.input-group-btn,
.nav-tabs a,
.nav-pills a,
.navbar,
.navbar-toggle,
.icon-bar,
.breadcrumb,
.pagination,
.pager *,
.label,
.badge,
.jumbotron,
.thumbnail,
.alert,
.progress,
.panel,
.well,
.modal-content,
.tooltip-inner,
.popover,
.popover-title,
.carousel-indicators li {
    border-radius:0 !important;
}

7

Esta pregunta es bastante antigua, sin embargo, es muy visible en los motores de búsqueda, incluso en las búsquedas relacionadas con Bootstrap 4 . Creo que vale la pena agregar una respuesta para deshabilitar las esquinas redondeadas, forma BS4.

En el _variables.scsshay varios modificadores globales para cambiar rápidamente las cosas, como habilitar o deshabilitar el sistema flex gird, esquinas redondeadas, gradientes, etc.

$enable-flex:          false !default;
$enable-rounded:       true !default; // <-- This one
$enable-shadows:       false !default;
$enable-gradients:     false !default;
$enable-transitions:   false !default;

Las esquinas redondeadas son enabledpor defecto.

Si prefiere compilar Bootstrap 4 usando Sass y el suyo _custom.scsscomo yo (o usando el personalizador oficial), anular la variable relacionada es suficiente:

$enable-rounded : false

1
rockea;) Esta debería ser la respuesta aceptada una vez que Bootstrap 4 se vuelva viral ... lo siento, público. Está bien escondido aquí para aquellos que ya lo usan en alfa.
kub1x

5
.btn {
  border-radius:                    0px;
  -webkit-border-radius:            0px;
  -moz-border-radius:               0px;
}

O defina un mixin e inclúyalo donde desee un botón sin redondear.

@mixin btn-round-none {
  border-radius:                    0px;
  -webkit-border-radius:            0px;
  -moz-border-radius:               0px;
}

.btn.btn_1 {
@inlude btn-round-none
}

44
pxes redundante, no?
ta.speot.is

1
Normalmente mantengo 'px' para que si tengo que cambiar el valor no tenga que volver a escribir 'px'.
nkkollaw

1
pero los bytes adicionales de datos
Anthony Shaw

5

Al usar Bootstrap> = 3.0archivos de origen ( SASSo LESS) no tiene que deshacerse de las esquinas redondeadas en todo si solo hay un elemento que lo está molestando, por ejemplo, para deshacerse de las esquinas redondeadas en la barra de navegación, utilizar:

Con SCSS:

$navbar-border-radius: 0;

Con menos:

@navbar-border-radius: 0;

Sin embargo, si desea deshacerse de las esquinas redondeadas de todo, puede hacer lo que @ adamwong246 mencionó y usar:

$baseBorderRadius: 0;
@baseBorderRadius: 0;

Esas dos configuraciones son las configuraciones "raíz" de las cuales navbar-border-radiusse heredarán las otras configuraciones , a menos que se especifiquen otros valores.

Para obtener una lista de todas las variables, consulte variables.less o variables.scss


4

El código publicado anteriormente por @BrunoS no funcionó para mí,

* {
  .border-radius(0) !important;
}

lo que usé fue

* {
  border-radius: 0 !important;
}

Espero que esto ayude a alguien


3
@brunos estaba usandoLESS
afaolek


2

O puede agregar esto al html del elemento del que desea eliminar el radio del borde (de esta manera no lo eliminaría de todos los botones / elementos):

style="border-radius:0px; -webkit-border-radius:0px; -moz-border-radius:0px;"

2

Con SASS Bootstrap, si está compilando Bootstrap usted mismo, puede establecer todo el radio del borde (o más específico) simplemente en cero:

$border-radius:               0;
$border-radius-lg:            0;
$border-radius-sm:            0;

Exactamente. Ponga estas declaraciones antes, por ejemplo, @import "../node_modules/bootstrap/scss/bootstrap";y bootstrap no las anulará, ya que se declaran con la !defaultpalabra clave en bootstrap-source.
Jeppe

2

Bootstrap tiene sus propias clases para bordes, incluido .rounded-0deshacerse de las esquinas redondeadas en cualquier elemento, incluidobuttons

https://getbootstrap.com/docs/4.4/utilities/borders/#border-radius

<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" rel="stylesheet"/>
<a class="btn btn-primary">Regular Rounded Corners</a>
<a class="btn btn-primary rounded-pill">Pill Corners</a>
<a class="btn btn-primary rounded-0">Square Corners</a>


1

También es posible que desee echar un vistazo a FlatStrap . Proporciona un reemplazo de Metro-Style para Bootstrap CSS sin esquinas redondeadas, degradados y sombras paralelas.


El problema con Flatstrap es que todavía no tienen soporte SCSS para v3 :(
HP.

1

si está usando bootstrap, puede usar bootstrap class = "rounded-0" para hacer el borde con los bordes afilados sin esquinas redondeadas <button class="btn btn-info rounded-0"">Generate</button></span>


qué versión de bootstrap
ina

0

He creado otro archivo CSS y agrego el siguiente código No todos los elementos están incluidos

/* Flatten das boostrap */
.well, .navbar-inner, .popover, .btn, .tooltip, input, select, textarea, pre, .progress, .modal, .add-on, .alert, .table-bordered, .nav>.active>a, .dropdown-menu, .tooltip-inner, .badge, .label, .img-polaroid, .panel {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none !important;
    -webkit-border-radius: 0px !important;
    -moz-border-radius: 0px !important;
    border-radius: 0px !important;
    border-collapse: collapse !important;
    background-image: none !important;
}
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.