移动web less-响应式及栅格系统

401 阅读5分钟

移动web less-响应式及栅格系统

less的插件

1648211806491

less的使用(方便快捷,常用)

在less里面可以书写CSS结构,以及支持标签嵌套如:

div{
    width:100px;
    height:100px;
    span {
        p { font-size:14px;
            a{
                color:red;
            }
        }
    }
}
1.less的变量

固定语法 @+任意的名称(有意义的英语)

作用 把一些css的属性设置在一个地方,实现一改全改

颜色:blue
@color:blue;
div{
    color:@color;
}
span {
    color:@color;
}

字体大小:18px
@font:18px;
div {
    font-size:@font;
}
span{
    font-size:@font;
}

1647917293345

3014da5323af60a118057980896f490

2.less的运算

less支持运算宽度,高度,字体大小都可以,但是注意 除法要加括号包裹,加减乘就可以直接使用

div200px80px  字体24px
div{
    width:100px+100px;
    height:100px-20px;
    font-size:12px*2
}

1647917348332

3.less的混合

注意: 定义一个mixin (任意名称)

​ 要 点号 开头后面要加 括号

​ 共用属性就放在一起 背景图片的位置 a1 a2类名可以随意定义

如图:

1648213321423

4.less的嵌套

CSS不支持嵌套,但是在less书写就可以嵌套(更加方便快捷,节省自己书写CSS时间)

注意: 伪元素和hover书写的时候,前面一定要加 &

div {
    &::before {
        content: '我是div的伪元素,less伪元素写法必须要加 & ';
        display: block;
        width: 100px;
        background-color: blue;
    }
    width: 300px;
    border: 1px solid #000;
     p {
        a {
            display: block;
            width: 100px;
            img {
                width: 100%;
            }
        }
    }
}

1648214021428

5.课外小知识(导航水平滚动)

给父盒子加 overflow-x:auto; 内容溢出出现滚动条

1647920045788

6.拓展-文字后面出现省略号

1 第一行文字 末尾出现 省略号

​ 这三行做为一个整体一起去记

overflow:hidden;

white-space: nowrap;

text-overflow: ellipsis;

2 可以指定第几行出现省略号

display: -webkit-box;

overflow: hidden;

white-space: normal!important;

text-overflow: ellipsis;

word-wrap: break-word;

-webkit-line-clamp: n ; (n) 为几行取几

-webkit-box-orient: vertical;

7.响应式布局

​ 只写一套代码,可以再PC端运行(体验不错) ,还可以在移动端上运行(体验不错)

响应式布局原理

​ 根据屏幕宽度不同 去使用不同CSS

​ 里面有4个盒子,在一列显示

​ 屏幕宽比较宽 里面的4个盒子的宽度去设置 25%

​ 里面有4个盒子,在2列显示

​ 屏幕宽比较宽 里面的4个盒子的宽度去设置 50%

而这个去使用不同的CSS呢,就是引入 媒体查询 和 引入别人的CSS、JS框架

8.媒体查询: @media ()

​ 媒体查询就是可以根据屏幕的宽度不同 去使用不同的CSS

常见及规范写法:

@media screen and () ()里包裹屏幕宽度,高度属性及多少像素

操作示范

屏幕小于100px的时候是红色 屏幕大于500的时候是绿色 当屏幕的宽度 大于 300 小于 500px的时候是黄色 如图2示例

图1:

1648006745235

图2:

1648214810352

9.栅格系统:引入 bootstrap css 文件

bootstrap 网站里面有各种各样的字体图标,UI框架,CSS样式等等

1648215388113

1648216335394

要使用栅格系统就要引入

1 bootstrap css文件

2 jquery.js js文件

3 bootstrap.js js文件

栅格系统(boostrap的核心,也是实现响应式布局的核心 媒体查询 )

全屏宽度: container-fluid

居中版心:container

1 bootstrap将屏幕按照宽度分成四种

​ 1 大屏幕 lg >1200px

​ 2 中等屏幕 md >992px-1200px

​ 3 小屏幕 sm >768px-992px

​ 4 极小屏幕 xs <768px

2 固定用法

​ 1 先外层写一个 类 名字是 container (固定居中版心)

​ 2 里面写一个类 名字是固定 row

​ 3 根据需求 (在什么样的屏幕下 一行 显示几个元素 )

​ bootstrap 默认将一行 划分成了12份 12列 1列就占一份

1648215860336



  
    
    
    
    
    
  
  
    

    
  

  
  
  
  


3

1 如果一行超过了12份 和浮动的特性一样 往下掉

2 .container 居中的版心 宽度会跟随屏幕宽度的变化而变化 (不用管多少px 版心会自动调整大小就可以了)

​ 有些时候 网页设计

需要版心 container

全屏 .container-fluid

只要你写了栅格代码,那么就不能省略 container(版心)或container-fluid(全屏)

3 要想好 代码在每一种屏幕下的表现

​ 1 大屏幕下 一列占一份

​ 2 极小屏幕下 一列占二份

​ 3 变成 中等屏幕

​ 仅仅是因为 bootstrap自己额外做了设置而已

​ 自动设置了 让较大屏幕 去沿用较小屏幕的设置



  
    
    
    
    
    

    
  
  
    

    
  

  
  
  
  


4 额外补充

1 栅格系统 方便我们 编写 代码 在不同的宽度下 不同表现的代码 容器而已!

2 栅格系统的核心 也是 媒体查询

3 应用

​ 我们要根据栅格系统对于 不同屏幕的宽度的分类 来找到 当前需求 如何实现

4 比如

​ 1 定版心的容器



  
    
    
    
    
    

  
  

    

     
    
  

  
  
  
  



5 注意事项:使用新、旧的 bootstrap 的框架不同 ,展示出的效果也不同

​ 套用别人的项目框架,就引入对应的 bootstrap 版本

6 使用第三方的UI框架时

由于使用的是别人的代码框架,所以我们随便改代码和添加代码都容易出错,因此最好加一点代码 看一下效果