小编lem*_*r_a的帖子

材料设计精简版 - 更改抽屉图标颜色

我找不到改变抽屉汉堡包图标的方法.让代码进行讨论:

代码

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <title>drawer icon color</title>
    <link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons">
    <link rel="stylesheet" href="https://code.getmdl.io/1.3.0/material.indigo-pink.min.css">
    <script defer src="https://code.getmdl.io/1.3.0/material.min.js"></script>
  </head>

  <body>
    <div class="mdl-layout mdl-js-layout mdl-layout--fixed-header">
      <header class="mdl-layout__header"></header>
        <div class="mdl-layout__drawer"></div>
    </div>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

输出

输出结果

图标似乎随后动态添加,颜色设置为白色:

浏览器生成的代码

当我从我的铬控制台改变颜色时,一切都很好.
但是如果我尝试使用css类它不起作用:

.mdl-layout__header .mdl-layout__drawer-button {
  color: #000 !important;
}
Run Code Online (Sandbox Code Playgroud)

我的问题

除了通过DOM动态更改颜色或直接搞乱material.min.js,我还有其他解决方案吗?

(没有使用javascript成功更改颜色)

<script type="text/javascript">
  document.querySelector(".mdl-layout__header .mdl-layout__drawer-button").style.color = "red";
</script>
Run Code Online (Sandbox Code Playgroud)

谢谢 !♫♪我祝你圣诞快乐♫♪♫

html javascript frontend css3 material-design-lite

5
推荐指数
1
解决办法
2644
查看次数

C 语言中 Scala 的 Option 或 Rust 的 Result 错误处理

在专业地使用 Scala 和 Python 一段时间后,我再次开始编写 C。在使用了 Scala 的“Option”和“Either”错误处理模式并最近尝试了 Rust 方式之后,我想要在 C 中使用类似的东西。所以我想出了这样的东西:

typedef struct {
    int age;
    char* name;
} User;

typedef struct {
    char* error;
    User* value;
} UserResult;

UserResult get_user() {
    /* Some complicated user fetching process .. that fails */
    return (UserResult) { .error = "403 Unauthorized\n" };
}

int main(void) {
    UserResult res = get_user();
    if (res.error)
        handle_error(res.error);
    if (res.value)
        do_something(res.value);
    /* ... */
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

但这并不是真的安全(我们可以访问无效的指针)。我怎样才能得到类似于 Scala 或 Rust 处理 C 错误的方法?

编辑:更正 UserResult …

c error-handling scala rust

5
推荐指数
1
解决办法
123
查看次数