Est-il vraiment impossible d'adapter sa taille à son contenu?
87
Je voudrais préciser s'il est possible ou non de faire en sorte qu'un div s'adapte à sa taille en fonction de la taille du contenu sans avoir à faire flotter les éléments ou à rendre leur position absolue. C'est possible?
Imaginez à quel point le développement Web aurait été plus simple si nous pouvions faire cela! Je veux display: block-inline!! (c'est-à-dire se comporter extérieurement comme un bloc mais intérieurement comme un inline - le contraire de inline-block)
J'ai mis à jour ma preuve de concept JSFiddle qui montre également la possibilité avec position:absolute. C'est aussi bien possible. Cliquez sur le lien dans ma réponse.
display: block-inline
!! (c'est-à-dire se comporter extérieurement comme un bloc mais intérieurement comme un inline - le contraire deinline-block
)Réponses:
CSS
display
cadreC'est bien sûr possible - Preuve de concept JSFiddle où vous pouvez voir les trois solutions possibles:
display: inline-block
- c'est celui dont vous n'êtes pas au courantposition: absolute
float: left/right
la source
Vous pouvez utiliser
display: inline-block
.la source
position:absolute
. C'est aussi bien possible. Cliquez sur le lien dans ma réponse.Vous pouvez utiliser:
width: -webkit-fit-content; height: -webkit-fit-content; width: -moz-fit-content; height: -moz-fit-content;
EDIT: Non, voir http://red-team-design.com/horizontal-centering-using-css-fit-content-value/
AUSSI: http://dev.w3.org/csswg/css-box-3/
la source
-webkit-fit-content
ou-moz-fit-content
selon le navigateur que vous utilisez.vous pouvez aussi utiliser
quand rien ne semble fonctionner, cela fonctionne toujours;)
la source
cela fonctionne bien sur Edge et Chrome:
width: fit-content; height: fit-content;
la source