justify-content property isn't working

前端 未结 5 1023
悲哀的现实
悲哀的现实 2020-12-13 08:07

I have an odd issue that I\'m having trouble with. So I\'ve been working on this prototype html5 template that uses flexbox. Though I\'ve been running into one slight proble

相关标签:
5条回答
  • 2020-12-13 08:28

    This answer might be stupid, but I spent quite some time to figure it out.

    What happened to me was I didn't set display: flex to the container. And of course, justify-content won't work without a container with that property.

    0 讨论(0)
  • 2020-12-13 08:39

    Go to inspect element and check if .justify-content-center is listed as a class name under 'Styles' tab. If not, probably you are using bootstrap v3 in which justify-content-center is not defined.

    If so, please update bootstrap, worked for me.

    0 讨论(0)
  • 2020-12-13 08:44

    justify-content only has an effect if there's space left over after your flex items have flexed to absorb the free space. In most/many cases, there won't be any free space left, and indeed justify-content will do nothing.

    Some examples where it would have an effect:

    • if your flex items are all inflexible (flex: none or flex: 0 0 auto), and smaller than the container.

    • if your flex items are flexible, BUT can't grow to absorb all the free space, due to a max-width on each of the flexible items.

    In both of those cases, justify-content would be in charge of distributing the excess space.

    In your example, though, you have flex items that have flex: 1 or flex: 6 with no max-width limitation. Your flexible items will grow to absorb all of the free space, and there will be no space left for justify-content to do anything with.

    0 讨论(0)
  • I was having a lot of problems with justify-content, and I figured out the problem was "margin: 0 auto"

    The auto part overrides the justify-content so its always displayed according to the margin and not to the justify-content.

    0 讨论(0)
  • 2020-12-13 08:55

    I had a further issue that foxed me for a while when theming existing code from a CMS. I wanted to use flexbox with justify-content:space-between but the left and right elements weren't flush.

    In that system the items were floated and the container had a :before and/or an :after to clear floats at beginning or end. So setting those sneaky :before and :after elements to display:none did the trick.

    0 讨论(0)
提交回复
热议问题