You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MkDocs默认主题导航栏添加Logo图片问题求助

解决MkDocs默认主题导航栏不显示Logo的问题

默认的mkdocs原生主题不支持通过logo配置项直接在导航栏显示Logo,你可以通过以下两种方法解决:

方法一:自定义导航栏模板

  1. 在项目根目录的docs文件夹下创建templates子目录
  2. 在templates中新建nav.html文件,写入以下代码(替换默认导航栏结构,加入Logo):
<nav class="navbar navbar-expand-md navbar-dark bg-primary">
    <div class="container">
        <!-- 此处添加Logo -->
        <a class="navbar-brand" href="{{ nav.homepage.url }}">
            <img src="{{ base_url }}/img/logo.png" alt="站点Logo" height="30" />
        </a>
        <!-- 原有导航菜单逻辑 -->
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNav" aria-controls="navbarNav" aria-expanded="false" aria-label="Toggle navigation">
            <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNav">
            <ul class="navbar-nav">
                {% for nav_item in nav %}
                    {% if nav_item.children %}
                        <li class="nav-item dropdown">
                            <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown{{ loop.index }}" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                                {{ nav_item.title }}
                            </a>
                            <div class="dropdown-menu" aria-labelledby="navbarDropdown{{ loop.index }}">
                                {% for child in nav_item.children %}
                                    <a class="dropdown-item" href="{{ child.url }}">{{ child.title }}</a>
                                {% endfor %}
                            </div>
                        </li>
                    {% else %}
                        <li class="nav-item">
                            <a class="nav-link" href="{{ nav_item.url }}">{{ nav_item.title }}</a>
                        </li>
                    {% endif %}
                {% endfor %}
            </ul>
        </div>
    </div>
</nav>
  1. 在mkdocs.yml中配置自定义模板路径:
theme:
  name: mkdocs
  custom_dir: docs/templates

方法二:切换到支持Logo的官方主题

如果你不想自定义模板,可以直接切换到readthedocs主题(MkDocs官方维护),它原生支持logo配置:

theme:
  name: readthedocs
  logo: img/logo.png

配置完成后,Logo会自动显示在导航栏左侧。

注意事项

确保img/logo.png文件位于docs/img/目录下,MkDocs会自动将该目录的静态文件复制到生成的站点中。

内容的提问来源于stack exchange,提问作者Leonardo Sforza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 22:05:56