• 前端面试常见问题


     form中的input可以设置readonly和disable, 请问二者有什么区别?

    相同点:readonly和disabled都是可以禁止用户更改表单中的内容。比如都设为true,则form属性将不能被编辑
    不同点:
    (1)readonly只针对input(text/password)和textarea有效,而disabled对于所有的表单元素都有效,包括select,radio,checkbox等。
    (2)表单在使用GET或POST方式提交时,表单元素在使用了readonly后,值可以传递到后台;而表单元素在使用disabled后值不可以传递到后台。
    (3)所有控件都有disabled 属性,但是不一定有readonly属性;点击被readonly掉的按钮照样可以触发事件,但是被disabled掉的按钮就无法使用了不管上面有没有事件。


    小技巧: 可以给readonly设置一个css样式:
    style=“background-color:#cccccc;”
    这样readonly的显示效果就和disable一样了

    如果一个输入项的disabled设为true,则该表单输入项不能获取焦点,用户的所有操作(鼠标点击和键盘输入等)对该输入项都无效,最重要的一点是当提交表单时,这个表单输入项将不会被提交。

    而readonly只是针对文本输入框这类可以输入文本的输入项,如果设为true,用户只是不能编辑对应的文本,但是仍然可以聚焦焦点,并且在提交表单的时候,该输入项会作为form的一项提交。

     简述块级元素在父元素的水平垂直居中方法有哪些?

    (1)给父元素设置display:flex伸缩盒布局;并且设置:align-items:center;justify-content:center;

    (2)给父元素一个相对,子元素使用绝对定位,并且使用配合属性left:50%;top:50%;让子元素左上角移动到父元素中心位置;然后再让子元素使用margin-left:-width/2;margin-top:-height/2;

    (3)给父元素一个相对定位,给子元素一个绝对定位。然后给子元素的所有配合属性设置为0px(top/left/top/bottom)并且给子元素设置margin:auto;

    (4)给父元素设置一个display:flex;子元素设置margin:auto;

    (5)给父级和子级都加绝对定位,再给子级添加top:calc(50% - 子级元素高度一半)left:calc(50% - 子级元素宽度一半)

    简述父子级外边距合并问题的,几种解决方案。

    (1)给父元素添加边框,高度,定义内边距

    (2)给父元素设置border-top或padding-top

    (3)给父元素添加 overflow:hidden;

    (4)给子元素添加浮动或者绝对定位

    (5)给子元素设置margin-top值,使父盒子更改为BFC

  • 相关阅读:
    【学习笔记70】数据劫持
    【CSDN话题挑战赛第2期】​web组态可视化领域分享​
    B/S端界面控件DevExtreme中文指南——如何自定义应用主题?
    【二】kubernetes master单节点拓展为集群
    leetcode 907. Sum of Subarray Minimums(子数组最小值的和)
    C语言学习笔记(十五)
    求告知识图谱构建工具
    深度学习乳腺癌分类 计算机竞赛
    可编程 USB 转串口适配器开发板 DS1302 时钟芯片参数读取与修改
    TCP/IP 详解(第 2 版) 笔记 / 3 链路层 / 3.5 无线局域网 - IEEE 802.11 (Wi-Fi) / 3.5.1 802.11 帧
  • 原文地址:https://blog.csdn.net/DIUDIUjiang/article/details/126056881