如何使用golang使用css运行html

如何使用golang使用css运行html,html,css,go,Html,Css,Go,各位,我有一个问题,通过golang文件在html文件中包含css。 本地服务器上的输出只是html文件,没有css,如何修复它 也许我使用模板包的方式有问题,所以你能解释一下如何使路由不同吗?示例:当您转到时,它将显示login.html。我看到了关于它的net/http文档,但要么我是瞎子,要么我只是试图在那里找到错误的东西。 所有文件都在同一目录中 welcome.html <!Doctype html> <html> <head> <meta c

各位,我有一个问题,通过golang文件在html文件中包含css。 本地服务器上的输出只是html文件,没有css,如何修复它

也许我使用模板包的方式有问题,所以你能解释一下如何使路由不同吗?示例:当您转到时,它将显示login.html。我看到了关于它的net/http文档,但要么我是瞎子,要么我只是试图在那里找到错误的东西。 所有文件都在同一目录中

welcome.html

<!Doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Website</title>
    <link rel="stylesheet" href="style.css" >
</head>

<body>
    <link rel="stylesheet" href="style.css">
<form action="">
    <center><h1>Enter</h1></center>
        <div class="group">
            <label for="">Login:</label>
            <input type="text">
        </div>
        <div class="group">
            <label for="">Password:</label>
            <input type="password">
        </div>
    <div class="group">
            <center><button>Come in</button></center>
        </div>
    <center><a href="regist.html" class="link">Registration</a></center>
    </form>

</body>
</html>
goFile.go

package main

import (
    "fmt"
    "html/template"
    "net/http"
)

func welcome(w http.ResponseWriter, r *http.Request) {

    tmpl := template.Must(template.ParseFiles("welcome.html"))

    tmpl.Execute(w, nil)
}

func login(w http.ResponseWriter, r *http.Request) {
    tmpl := template.Must(template.ParseFiles("login.html"))

    tmpl.Execute(w, nil)
}

func main() {
    http.HandleFunc("/", welcome)
    http.HandleFunc("/login", login)

    fmt.Println("Listening...")
    http.ListenAndServe(":8080", nil)
}
**结果如下:**

总结:如何使用golang net/http或html/template包使用css显示页面?
如何正确地在页面之间进行路由?对不起,我犯了错误。提前谢谢你们,伙计们

您的Go服务器不知道它应该提供
style.css
,因为您从未告诉过它。如果将该文件移动到
assets/
子目录,则可以注册处理程序以服务于该目录:

http.Handle("/assets/", http.StripPrefix("/assets/", http.FileServer(http.Dir("assets"))))

另请参见。

那么,您已经在浏览器中打开了开发人员工具(其中任何一个现在都内置了开发人员工具),清除了缓存,并在“网络”选项卡处于活动状态时重新尝试了您的请求,对吗?它是否向您显示,请求CSS文件失败,返回404?我的意思是,你要么没有执行最直接的检查,要么没有告知我们全部细节。你知道,任何一个都不太好;-)如果不更新HTMLHREF,这将无法工作,或者会吗?HREF还需要是绝对的,而不是相对的,否则浏览器在提供
/login
服务时会查看
/login/assets/styles.css
http.Handle("/assets/", http.StripPrefix("/assets/", http.FileServer(http.Dir("assets"))))