CSS reset初始化&源码实例

CSSReset的目的

为什么给页面设定样式的时候要进行CSS初始化?主要是市场上的浏览器差异性导致的,不同浏览器对一些标签的默认样式不同,导致同一页面用不同浏览器打开看到的效果有差异,为了消除这种影响,需要清除浏览器默认样式,因此每个网页都需要CSS初始化。
比较好的CSS Reset代码可以去优秀网站查看源码获得,这里主要为了备份。

CSS初始化源码模板

/*清除所有标签的默认内外边距*/
/*盒子的大小默认按照设定的width和height,不是width+padding+border*/
* {
            margin: 0;
            padding: 0;
            box-sizing: bordre-box;
        }
/*清除em,i的倾斜效果*/
        em,
        i {
            font-style: normal
        }
/*清除li的默认小圆点*/
        li {
            list-style: none
        }

        img {
            border: 0;/*低版本浏览器的外面有链接会有边框的问题*/
            vertical-align: middle/*取消图片低侧有空白缝隙的问题*/
        }

        button {
        /*统一改成小手*/
            cursor: pointer
        }

        a {
        /*统一链接颜色,清除链接下划线*/
            color: #666;
            text-decoration: none
        }

        a:hover {
            color: #c81623
        }

        button,
        input {
        /*字体中的汉字用Unicode编码防止不能识别*/
            font-family: Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif
        }

        body {
            -webkit-font-smoothing: antialiased;/*css3新特性,抗锯齿性*/
            background-color: #fff;
            font: 12px/1.5 Microsoft YaHei, Heiti SC, tahoma, arial, Hiragino Sans GB, "\5B8B\4F53", sans-serif;
            color: #666
        }

        .hide,
        .none {
        /*定义隐藏样式*/
            display: none
        }

/*伪元素清除浮动*/
        .clearfix:after {
            visibility: hidden;
            clear: both;
            display: block;
            content: ".";
            height: 0
        }

        .clearfix {
            *zoom: 1
        }
### 如何自定义 WiFiManager 配置 #### 创建自定义参数 为了实现更灵活的配置选项,可以向 `WiFiManager` 添加自定义参数。这允许用户不仅能够输入 Wi-Fi 凭证,还可以设置其他必要的网络或应用特定变量。 ```cpp // 定义一个字符串类型的自定义参数用于存储MQTT服务器地址 WiFiManagerParameter custom_mqtt_server("mqtt_server", "MQTT Server:", "", 40); ``` 此代码片段创建了一个名为 `custom_mqtt_server` 的新参数,它将在 Web 配置页面上显示为可编辑字段[^3]。 #### 初始化并添加自定义参数至 WiFiManager 实例 一旦定义好了所有希望收集的数据项,则需将其加入到 `WiFiManager` 对象中以便于后续处理: ```cpp void setup() { // 设置串口通信波特率 Serial.begin(115200); // 构建WiFiManager对象实例 WiFiManager wifiManager; // 将先前声明好的自定义参数附加给WiFiManager wifiManager.addParameter(&custom_mqtt_server); // 启动自动连接过程;如果失败则进入配置模式 if (!wifiManager.autoConnect()) { Serial.println("Failed to connect and hit timeout"); delay(3000); ESP.reset(); delay(5000); } // 获取用户提交后的自定义参数值 String mqttServer = custom_mqtt_server.getValue(); // 打印获取到的结果供调试查看 Serial.print("MQTT server set to: "); Serial.println(mqttServer); } ``` 上述例子展示了如何初始化 `WiFiManager` 并注册额外的表单元素来捕获 MQTT broker 地址。当设备未能成功接入已知无线网络时会触发内置 AP 模式的开启,在这种状态下访问者可以通过浏览器填写所需信息完成初次设定工作流。 #### 修改默认样式 (可选) 对于那些想要进一步美化界面的人来说,也可以调整 HTML/CSS 来改变呈现效果。不过需要注意的是直接改动源码可能不是最佳实践,建议查阅官方文档寻找是否存在合法途径来进行此类变更[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值