calc()实现CSS响应式布局

calc()是CSS3新增的一个功能,可以使用calc()给元素的border、margin、pading、font-size和width等属性设置动态值,仅在css中就可以实现响应式布局,不用再担心元素把盒子撑破,页面也响应浏览器窗口变化,想想就感觉美好。

注意事项
  • 方法的表达式中有“+”和“-”时,其前后必须要有空格,如”widht: calc(100%-20px)”这种没有空格的写法是错误的;
  • 方法的表达式中有“*”和“/”时,其前后可以没有空格,但建议留有空格。
实例
  • 容器盒子为100%显示,容器中渲染一个长300,宽200的图片。
  • 图片相对于容器居中显示

html 部分:

<div id="contenter">
   <img src="./myPng.png" class="dispalyImg">
</div>

css部分:


                
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue响应式布局可以通过使用CSS中的媒体查询来实现。在Vue组件中,可以使用计算属性来动态计算CSS类名,根据不同的屏幕尺寸来应用不同的样式。例如: ``` <template> <div :class="containerClass"> <div :class="itemClass">Item 1</div> <div :class="itemClass">Item 2</div> <div :class="itemClass">Item 3</div> </div> </template> <script> export default { computed: { containerClass() { return { 'container': true, 'container--small': this.$vuetify.breakpoint.smAndDown, 'container--medium': this.$vuetify.breakpoint.mdAndUp, 'container--large': this.$vuetify.breakpoint.lgAndUp, } }, itemClass() { return { 'item': true, 'item--small': this.$vuetify.breakpoint.smAndDown, 'item--medium': this.$vuetify.breakpoint.mdAndUp, 'item--large': this.$vuetify.breakpoint.lgAndUp, } } } } </script> <style> .container { display: flex; flex-wrap: wrap; justify-content: center; } .item { flex: 1 0 200px; margin: 10px; } @media (max-width: 599px) { .container--small { max-width: 400px; } .item--small { flex-basis: 100%; } } @media (min-width: 600px) and (max-width: 959px) { .container--medium { max-width: 800px; } .item--medium { flex-basis: calc(50% - 20px); } } @media (min-width: 960px) { .container--large { max-width: 1200px; } .item--large { flex-basis: calc(33.33% - 20px); } } </style> ``` 在上面的示例中,我们使用了Vuetify的断点对象来判断当前屏幕尺寸,然后根据不同的屏幕尺寸应用不同的CSS类名。在CSS中,我们使用媒体查询来定义不同的样式,例如在小屏幕上,容器的最大宽度为400px,每个项目占据整个行;在中等屏幕上,容器的最大宽度为800px,每个项目占据一半的宽度;在大屏幕上,容器的最大宽度为1200px,每个项目占据三分之一的宽度。这样就可以实现响应式布局了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值