0

这是使用的代码

<!DOCTYPE html>
<html>
<head>
<title>Registration</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<link href="twitter-bootstrap/docs/assets/css/bootstrap.css" rel="stylesheet"/>
<link href="twitter-bootstrap/docs/assets/css/docs.css" rel="stylesheet">
<link href="twitter-bootstrap/docs/assets/js/google-code-prettify/prettify.css" rel="stylesheet">
<style type="text/css">
    .container
    {
        width: 750px;
        height : 300px;
        margin-top : 50px;
    }
</style>
</head>
<body>
<div class = "container">
<div class = "well" style = "box-shadow : 0 1px 10px rgba(0,0,0,1.0);">    
    <form id = "reg" class = "form-horizontal" method = "post" action = "reg.php">
        <legend>Registration form</legend>      
        <div class = "control-group">
            <label class = "control-label">Login name</label>
            <div class = "controls">
                <div class = "input-prepend">
                    <span class = "add-on"><i class = "icon-user"></i></span>
                        <input type = "text" class = "input-xlarge" id = "login_name" name = "login_name" placeholder = "Login name"><div id = "name_inspector"></div>
                </div>
            </div>
        </div>

这是在文本字段的输入更改后做出反应的函数

$(document).ready(function(){
    //$('#name_inspector').css('background-image', 'url(img/name-is-free.png)');
    $("#login_name").change(
    function()
    {
        $('#name_inspector').css('background-image', 'img/ajax-loader-arrows.gif');
        $.get(
        "is_usr_name_free.php?login_name="+$('#login_name').val(), {},
        // At success.
        function(data)
        {
            var style_arr = data.split('@');
            alert(style_arr[0]+style_arr[1]);
            $('#name_inspector').css(style_arr[0], style_arr[1]);
        }, "html");
    });

在 Firebug 样式设置正确并加载图片。但是,没有看到图片。

4

1 回答 1

1

这里的问题是未设置样式的 div 的宽度为 100%,并且没有高度。同样,跨度没有宽度,但高度为 100% 或其中的文本。无论哪种方式,如果框中没有任何内容,则不会显示背景。您可以通过在 div 或 span 中添加一些文本来证明这一点。它是行内元素和块元素之间的区别。

所以,你要么需要为你的 div 指定一个高度,要么为跨度指定一个高度。然后应该创建足够的空间来显示图像。

于 2013-05-08T13:40:50.380 回答