我正在尝试在Bootstrap上使用CDN来提高我网站的性能。但是,当直接引用CSS时,它可以工作,而使用CDN则不然。
我将如何解决这个问题 - 我的代码是附加的。 ?
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet">
<html>
<div class="navbar">
<div class="navbar-inner">
<a class="brand" href="#">Matt's Homepage</a>
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="http://www.mattydb.com">Website</a></li>
<li><a href="http://www.twitter.com/akkatracker">Twitter</a></li>
</ul>
</div>
</div>
<div class="btn"><a href="http://www.mattydb.com">Click Here to Visit my Blog</a>
</div>
</html>
答案 0 :(得分:82)
正如其他人所提到的,使用CDN通常就像添加:
一样简单<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css"
rel="stylesheet">
进入你的HTML。 但是当您从本地文件加载html时,这不起作用。
原因是缺少协议。使用CDN时,最好不要指定协议,以便浏览器使用http或https,具体取决于用于获取html的协议。
这很重要,因为如果您的服务器使用https,最好使用https进行所有引用,以避免浏览器(特别是IExplorer)抱怨混合内容。另一方面,对CDN使用无协议URL更加缓存友好(http://encosia.com/cripple-the-google-cdns-caching-with-a-single-character/)。
不幸的是,如果协议是file://
,那么无协议URL是一个坏主意。因此,如果您要创建将从磁盘加载的私有HTML,那么您应该添加协议并使用CDN,如下所示:
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css"
rel="stylesheet">
希望这对某人有用......
答案 1 :(得分:8)
嗨Akkatracker我很感激你的问题;它帮助了我。您可以使用CDN进行Bootstrap。这是一个简单的完整html示例,您不必下载引导程序,因为您链接到css&amp;的公共内容分布式网络。 js文件。
简单的Bootstrap CDN HTML示例
<html>
<head>
<title>Bootstrap CDN Simple Example</title>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<h1> Bootstrap CDN Simple Complete HTML Example</h1>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script>
</body>
</html>
请注意JQuery需要在bootstrap.js之前发布。我们的JavaScript库的顺序非常重要。 希望这有帮助
答案 2 :(得分:6)
按照这个小提琴使用http://jsfiddle.net/MgcDU
CSS
@import url('http://twitter.github.com/bootstrap/assets/css/bootstrap.css');
.container {
margin-top: 10px;
}
html
<div class="container">
<div class="hero-unit">
<h1>Bootstrap jsFiddle Skeleton</h1>
<p>Fork this fiddle to test your Bootstrap stuff.</p>
<p>
<a class="btn btn-primary btn-large" href="http://twitter.github.com/bootstrap/index.html" target="_blank">
Learn more about Bootstrap
</a>
</p>
</div>
答案 3 :(得分:1)
让您的HTML看起来像这样:
<!DOCTYPE html>
<html>
<head>
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-combined.min.css" rel="stylesheet">
</head>
<body>
<div class="navbar">
<div class="navbar-inner">
<a class="brand" href="#">Matt's Homepage</a>
<ul class="nav">
<li class="active"><a href="#">Home</a></li>
<li><a href="http://www.akkatracker.com">Blog</a></li>
<li><a href="http://www.twitter.com">Twitter</a></li>
</ul>
</div>
</div>
<div class="btn"><a href="http://www.akkatracker.com">Click Here to Visit my Blog</a> </div>
</body>
</html>
答案 4 :(得分:1)
我是使用Twitter Bootstrap和BootstrapCDN的新手。我今晚做了一些简短的实验,我使用以下“头部”使我的网站 看起来 正确,差不多正确。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>My Project Site</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="">
<meta name="author" content="">
<!--link rel="stylesheet/less" href="less/bootstrap.less" type="text/css" /-->
<!--link rel="stylesheet/less" href="less/responsive.less" type="text/css" /-->
<!--script src="js/less-1.3.3.min.js"></script-->
<!--append ‘#!watch’ to the browser URL, then refresh the page. -->
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/css/bootstrap-
combined.min.css" rel="stylesheet">
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js">
</script>
<!-- my custom stylesheet -->
<link href="/word/css/style.css" rel="stylesheet">
<!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
<!--[if lt IE 9]>
<script src="js/html5shiv.js"></script>
<![endif]-->
<!-- Fav and touch icons -->
<link rel="apple-touch-icon-precomposed" sizes="144x144" href="img/apple-touch-icon-144-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="img/apple-touch-icon-114-precomposed.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="img/apple-touch-icon-72-precomposed.png">
<link rel="apple-touch-icon-precomposed" href="img/apple-touch-icon-57-precomposed.png">
<link rel="shortcut icon" href="img/favicon.png">
</head>
所以我用BootstrapCDN.com提供的样式表替换旧样式表。我不确定更换现有的样式表是否合适,但这里是实验,我的结果是如此......
这样可以使几乎的所有内容都正确无误;好吧也许它的风格完全正确。我仍然通过DOM工具来查看为什么我的模态不起作用。我怀疑我的模态问题是JavaScript以及网站刚从本地文件夹迁移的事实。
答案 5 :(得分:1)
使用Microsoft Ajax Content Delivery Network作为Bootstrap CDN:
<!DOCTYPE html>
<html>
<head>
<title>Bootstrap Demo</title>
<link rel="stylesheet" href="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.12.4.min.js"></script>
<script src="https://ajax.aspnetcdn.com/ajax/bootstrap/3.3.6/bootstrap.min.js"></script>
</head>
<body>
<div class="container">
<h1>Bootstrap Demo</h1>
</div>
</body>
</html>