从 php 文件动态加载 css 内容
dynamically load css content from php file
我有 css.php 文件,它将在每个 ajax 调用中生成动态样式,但如何在没有页面加载的情况下影响前端。
例如在 css.php ( .class1{color:#ddd;} .class2{color:#eee;} ) 实际上它会由 php 循环生成并且从键和值的组合创建 class。
因此可以使用 ajax 或 jquery 从 php 加载 css 内容,如果是,那么如何?
是的,这是可能的。您只需要:
- 将此样式附加到您的页面
<head>
部分到 <style></style>
块中
- 添加
<link rel="stylesheet" type="text/css" href="css_script.php">
例如,第一个变体(使用jQuery):
$.ajax({
url: 'css_script.php',
success: function(data) {
$('#ajax-css').remove(); // Remove previous CSS
// received by AJAX (if exists)
var $styleElement = $('<style/>');
$styleElement.attr('type', 'text/css');
$styleElement.attr('id', 'ajax-css'); // ...so that we can find
// and replace this element later
$styleElement.html(data);
$styleElement.appendTo($('head'));
}
});
这是Fiddle.
我有 css.php 文件,它将在每个 ajax 调用中生成动态样式,但如何在没有页面加载的情况下影响前端。 例如在 css.php ( .class1{color:#ddd;} .class2{color:#eee;} ) 实际上它会由 php 循环生成并且从键和值的组合创建 class。 因此可以使用 ajax 或 jquery 从 php 加载 css 内容,如果是,那么如何?
是的,这是可能的。您只需要:
- 将此样式附加到您的页面
<head>
部分到<style></style>
块中 - 添加
<link rel="stylesheet" type="text/css" href="css_script.php">
例如,第一个变体(使用jQuery):
$.ajax({
url: 'css_script.php',
success: function(data) {
$('#ajax-css').remove(); // Remove previous CSS
// received by AJAX (if exists)
var $styleElement = $('<style/>');
$styleElement.attr('type', 'text/css');
$styleElement.attr('id', 'ajax-css'); // ...so that we can find
// and replace this element later
$styleElement.html(data);
$styleElement.appendTo($('head'));
}
});
这是Fiddle.