我有以下 HTML 5 代码...
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<style type="text/css">
path#Selection{
fill: black;
}
path#Selection:hover{
fill:blue;
}
</style>
</head>
<body>
<object data="America" type="image/svg+xml" id="test"></object>
</body>
</html>
我正在使用的 svg 文件是从 gimp 导出的...
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
<svg xmlns="http://www.w3.org/2000/svg"
width="38.2361in" height="19.4444in"
viewBox="0 0 2753 1400">
<path id="Selection"
fill="black" stroke="black" stroke-width="1"
d="M 397.00,118.96
C 397.00,118.96 414.00,115.96 414.00,115.96
414.00,115.96 432.96,108.64 432.96,108.64
432.96,108.64 441.04,107.73 441.04,107.73
</path>
</svg>
不幸的是,如果它位于单独的文件中,我使用 css 悬停的路径检测不起作用。然而,路径是在我的浏览器中绘制和显示的,没问题。我设法让 path#Selection:hover 工作的唯一方法是将实际代码嵌入到我的 HTML 文件中......
<!DOCTYPE html>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js">
</script>
<style type="text/css">
path#Selection{
fill: black;
}
path#Selection:hover{
fill:blue;
}
</style>
</head>
<body>
<svg xmlns="http://www.w3.org/2000/svg"
width="38.2361in" height="19.4444in"
viewBox="0 0 2753 1400">
<path id="Selection"
fill="black" stroke="black" stroke-width="1"
d="M 397.00,118.96
C 397.00,118.96 414.00,115.96 414.00,115.96
414.00,115.96 432.96,108.64 432.96,108.64
432.96,108.64 441.04,107.73 441.04,107.73
</path>
</svg>
</body>
</html>
然而,这非常不方便,因为我正在构建一个包含许多国家的大地图,所以我宁愿将 svg 保留在单独的文件中。我该怎么做?