هل Runat = "Server" مطلوب لعلامات HTML التي تحتوي على نمط CSS بواسطة ASP.NET؟

StackOverflow https://stackoverflow.com/questions/4003032

سؤال

حصلت على علامة Div هذه التي يتم تعيين صورة الخلفية في CSS باستخدام طريقة مثل هذه ..

CSS المضمنة:-

.id0, .mySprite:hover div
    {
        background-image: url(<%=GetImage()%>);
        background-repeat: no-repeat;
        width: 728px;
        height: 243px;

    }

لغة البرمجة:-

<div class="id0"></div>

الآن هل أحتاج إلى ضبط runat="server" في هذه العلامة div أم لا؟ لأن هذا لا يعطي أي خطأ ، لكن كان أتساءل قد أكون بحاجة إلى أن يتم جلب مسار الصورة من الكود وراء ... الصورة لا تظهر في هذه تحكم المستخدم.

هل كانت مفيدة؟

المحلول

نحن سوف،

  • ال "Runat=Server" ليس هناك حاجة على الإطلاق. يتم تحميل/ربط CSS على العميل (في Brwoser) على أي حال.
  • آسف ، يا صاح ، ولكن لا يتم تقييم ملفات .css بواسطة ASP.NET - لذلك بشكل أساسي ، "عنوان URL" الذي يحصل عليه المستعرض هو <%=GetImage()%>, ، من الواضح أن المتصفح لا يستطيع فعل أي شيء معه.

النتيجة: لا يعمل. تستطيع لا يعمل.

نصائح أخرى

لماذا تحتاج إلى الخادم لإنشاء المسار؟ يجب أن يكون مسار الصورة بالنسبة إلى ملف CSS ، لذا إذا كانت CSS في Project/CSS/Style.CSS والصورة في المشروع/الصور/myimage.jpg استخدام

background-image: url(../images/myimage.jpg);

أيضًا ، استخدم Firebug للتحقق من ما يتم تعيينه بالفعل كصورة الخلفية. يمكنك أيضًا المحاولة

background-image: url(../images/myimage.jpg) !important;

أنت تقوم بإنشاء CSS من رمز من جانب الخادم؟ أم هو ملف .css بسيط؟ إذا كان لديك<%=GetImage()%>) ؛ لا يعمل.

وبعد ذلك ، قاعدة CSS لـ div مع ID0 ، يجب عليك تحديدها بـ # not dot ( # id0 not .id0)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top