2014-10-06 20 views
6

Tôi đang cố gắng sử dụng làm nội dung và hình ảnh css (base64), nhưng khi tôi tải trang được tải như hình ảnh liên kết bị hỏng.Sử dụng hình ảnh base64 svg làm nguồn nội dung css

Bây giờ, tôi đang sử dụng một trang web để tải về hình ảnh base64 và đây là css mà tôi đang sử dụng mà mang lại cho tôi những hình ảnh bị hỏng:

.default:after{ 
    content: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjQsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTYgMTYiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZD0iTTgsMEMzLjU4MiwwLDAsMy41ODIsMCw4czMuNTgyLDgsOCw4czgtMy41ODIsOC04UzEyLjQxOCwwLDgsMHogTTksMTJjMCwwLjU1Mi0wLjQ0OCwxLTEsMXMtMS0wLjQ0OC0xLTFWNw0KCWMwLTAuNTUyLDAuNDQ4LTEsMS0xczEsMC40NDgsMSwxVjEyeiBNOCw1LjAxNmMtMC41NTIsMC0xLTAuNDQ4LTEtMWMwLTAuNTUyLDAuNDQ4LTEsMS0xczEsMC40NDgsMSwxQzksNC41NjgsOC41NTIsNS4wMTYsOCw1LjAxNnoNCgkiLz4NCjwvc3ZnPg0K1422f94715e8d9b67004ad32568deab3'); 
    position:absolute; 
    width:100px; 
    height:100px; 
    } 

nếu tôi mở "vỡ" căn cứ 64 hình ảnh vào một tab chrome mới, đây là lỗi kết quả:

This page contains the following errors:

error on line 10 at column 1: Extra content at the end of the document Below is a rendering of the page up to the first error.

bây giờ, tôi chưa bao giờ sử dụng hình ảnh base64, nhưng tôi phải làm một cái gì đó đặc biệt hoặc nó nên chỉ cần sao chép và dán đoạn mã được tạo tự động?

cảm ơn trước sự giúp đỡ

** PS: Tôi đang phát triển trong localhost, tôi không biết nếu nó có thể là nguyên nhân gây ra hay không.

Trả lời

7

Đó là những gì nó nói, bạn đã mã hóa tài liệu + một số rác bổ sung ở cuối.

Điều này có vẻ là mã hóa chính xác mà tôi thu được bằng cách giải mã qua http://www.opinionatedgeek.com/dotnet/tools/Base64Encode/ xóa rác và sau đó mã hóa bằng cách sử dụng cùng một trang web.

PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNi4wLjQsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkNhcGFfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHdpZHRoPSIxNnB4IiBoZWlnaHQ9IjE2cHgiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTYgMTYiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHBhdGggZD0iTTgsMEMzLjU4MiwwLDAsMy41ODIsMCw4czMuNTgyLDgsOCw4czgtMy41ODIsOC04UzEyLjQxOCwwLDgsMHogTTksMTJjMCwwLjU1Mi0wLjQ0OCwxLTEsMXMtMS0wLjQ0OC0xLTFWNw0KCWMwLTAuNTUyLDAuNDQ4LTEsMS0xczEsMC40NDgsMSwxVjEyeiBNOCw1LjAxNmMtMC41NTIsMC0xLTAuNDQ4LTEtMWMwLTAuNTUyLDAuNDQ4LTEsMS0xczEsMC40NDgsMSwxQzksNC41NjgsOC41NTIsNS4wMTYsOCw1LjAxNnoNCgkiLz4NCjwvc3ZnPg==

+0

Tuyệt vời, nó hoạt động hoàn hảo. Cảm ơn bạn rất nhiều robert. – Nick

10

Bạn có thể dễ dàng chuyển đổi một tập tin SVG tới một base64 ecoded giá trị cho thuộc tính background CSS với lệnh này bash đơn giản:

echo "background: transparent url('data:image/svg+xml;base64,"$(openssl base64 < path/to/file.svg)"') no-repeat center center;" 

Tested trên Mac OS X. Bằng cách này bạn cũng tránh URL thoát khỏi mớ hỗn độn.

Hãy nhớ rằng base64 mã hóa tệp SVG sẽ tăng kích thước của nó, hãy xem css-tricks.com blog post

Các vấn đề liên quan