页面的网址更改时CSS无效

时间:2020-01-08 20:51:23

标签: javascript html css

我有一些共享通用CSS文件的HTML页面。我将它们放在标题中,并将其导入页面中。一切都很好,但是,我必须返回带有ID的页面,这是行不通的。

我有一个页面detail.html,但是返回detail/id时却不收费。不能是href错误,因为其他页面正在收费。我想我必须更改一些内容,使其适用于所有地方?

<!DOCTYPE html>
<html lang="es"> 
<head>

    <title>Historiales Médicos</title>

    <!-- Meta -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="Página home">
    <meta name="author" content="Lucas Mazariegos">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">


    <!-- Favicon -->
    <link rel="icon" href="img/favicon2.png" type="image/png">
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css">

    <!-- CSS -->
    <link href="css/bootstrap.min.css" rel="stylesheet">
    <link rel="stylesheet" href="css/estilo.css" type="text/css"> 
</head>

我得到的URL:detail / 1_S0004-06142005000900012-1。 HTML是收费的,而不是CSS。

1 个答案:

答案 0 :(得分:1)

我相信您的问题是CSS文件href="css/estilo.css"位于相对于页面URL的位置。

如果页面URL为http://example.com/detail,则CSS文件位于网站的根目录中。然后,当URL更改为http://example.com/detail/id时,引用css/estilo.css将位于目录位置/detail/id/estilo.css中。

我建议您将所有全局CSS都放在一个名为“ css”的根目录中,这样您的href就会变成href=/css/estilo.css,并且不会随着页面URL的更改而改变。

您应该对所有静态/通用图像和JavaScript文件执行相同的操作。

通常,图像进入/img目录,JavaScript文件进入/js目录。

如果CSS文件已经在网站的/css/目录中,那么您需要将相对引用css/estilo.css转换为绝对引用/css/estilo.css,然后对所有CSS文件。

将HTML更改为此:

<!-- CSS -->
<link href="/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="/css/estilo.css" type="text/css">