No Bootstrap v3, geralmente uso as classes hidden - ** combinadas com o clearfix para controlar layouts de várias colunas em diferentes larguras de tela. Por exemplo,
Eu poderia combinar vários ocultos - ** em um DIV para fazer minhas múltiplas colunas aparecerem corretamente em diferentes larguras de tela.
Como exemplo, se eu quisesse exibir linhas de fotos de produtos, 4 por linha em tamanhos de tela maiores, 3 em telas menores e 2 em telas muito pequenas. As fotos do produto podem ter alturas diferentes, portanto, preciso do clearfix para garantir que a linha se quebre corretamente.
Aqui está um exemplo na v3 ...
http://jsbin.com/tosebayode/edit?html,css,output
Agora que a v4 acabou com essas classes e as substituiu pelas classes visível / oculta - ** - para cima / para baixo, parece que preciso fazer a mesma coisa com vários DIVs.
Aqui está um exemplo semelhante na v4 ...
http://jsbin.com/sagowihowa/edit?html,css,output
Então, eu passei de DIVs individuais para ter que adicionar vários DIVs com muitas classes up / down para conseguir a mesma coisa.
De...
<div class="clearfix visible-xs-block visible-sm-block"></div>
para...
<div class="clearfix hidden-sm-up"></div>
<div class="clearfix hidden-md-up hidden-xs-down"></div>
<div class="clearfix hidden-md-down"></div>
Existe uma maneira melhor de fazer isso na v4 que eu ignorei?
d-initial
portanto, você não pode mais substituird-<breakpoint>-hidden
e definir o valor inicial. Se eu quiser ocultar um elemento em telas menores e mostrá-lo em telas médias e maiores sem conhecer a exibição inicial (que pode ser dinâmica), não posso restaurar seu valor. Eles não pensaram em nada disso.Infelizmente todas as classes
hidden-*-up
ehidden-*-down
foram removidos do Bootstrap (a partir de Bootstrap Versão 4 Beta , na versão 4 Alpha e Versão 3 dessas classes ainda existia).Em vez disso, novas classes
d-*
devem ser usadas, conforme mencionado aqui: https://getbootstrap.com/docs/4.0/migration/#utilitiesDescobri que a nova abordagem é menos útil em algumas circunstâncias. A abordagem antiga era ocultar elementos, enquanto a nova abordagem era mostrar elementos. Mostrar elementos não é tão fácil com CSS, pois você precisa saber se o elemento é exibido como bloco, embutido, bloco embutido, tabela etc.
Você pode restaurar os antigos estilos "hidden- *" conhecidos no Bootstrap 3 com este CSS:
As aulas
hidden-unless-*
não foram incluídas no Bootstrap 3, mas também são úteis e devem ser auto-explicativas.fonte
O Bootstrap v4.1 usa novos nomes de classe para ocultar colunas em seus sistemas de grade.
Para ocultar colunas, dependendo da largura da tela, use a
d-none
classe ou qualquer uma dasd-{sm,md,lg,xl}-none
classes. Para mostrar colunas em determinados tamanhos de tela, combine as classes mencionadas acima comd-block
oud-{sm,md,lg,xl}-block
classes.Exemplos são:
Mais destes aqui .
fonte
Não espero que várias div's sejam uma boa solução.
Eu também acho que você pode substituir
.visible-sm-block
por.hidden-xs-down
e.hidden-md-up
(ou.hidden-sm-down
e.hidden-lg-up
agir nas mesmas consultas de mídia).hidden-sm-up
compila em:.hidden-sm-down
e.hidden-lg-up
compila em:Ambas as situações devem agir da mesma maneira.
Sua situação se torna diferente quando você tenta substituir
.visible-sm-block
e.visible-lg-block
. Os documentos do Bootstrap v4 informam:fonte
O usuário Klaro sugeriu restaurar as antigas classes de visibilidade, o que é uma boa ideia. Infelizmente, a solução deles não funcionou no meu projeto.
Eu acho que é uma idéia melhor restaurar o mixin antigo do bootstrap, porque ele cobre todos os pontos de interrupção que podem ser definidos individualmente pelo usuário.
Aqui está o código:
No meu caso, inseri esta parte em um
_custom.scss
arquivo incluído neste momento nobootstrap.scss
:fonte
display: block
quais interrupções fluem em determinados cenários.http://v4-alpha.getbootstrap.com/layout/responsive-utilities/
Agora você precisa definir o tamanho do que está sendo oculto
Ocultará qualquer coisa de xs e menor, apenas xs
Esconderá tudo
fonte
Para o bootstrap 4, aqui está uma imagem de matriz explicando as classes usadas para mostrar / ocultar elementos depende do tamanho da tela:
Fonte: Meduim: Bootstrap 4 Oculto e Visível
fonte
O Bootstrap 4 para ocultar todo o conteúdo usa essa classe '.d-none'; ele ocultará tudo, independentemente dos pontos de interrupção, da mesma forma que a classe anterior da versão do bootstrap '.hidden'
fonte
Infelizmente, essas novas classes de auto-inicialização 4 não funcionam como as antigas em uma div
collapse
, pois definem a div visível para ablock
qual começa visível em vez de oculta e se você adicionar uma div extra àcollapse
funcionalidade, não funcionará mais.fonte
fonte