I use self-hosting SignalR (version 2.1.1) application for Mono (version 3.2.8 (Debian 3.2.8+dfsg-4ubuntu1)). I want to include error page for Owin in my project. I use UseErrorPage extension method from Microsoft.Owin.Diagnostics (http://www.asp.net/aspnet/overview/owin-and-katana/getting-started-with-owin-and-katana). Here my Startup class:
[assembly: OwinStartup(typeof(Startup))]
namespace SignalR.Namespace
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.UseErrorPage(ErrorPageOptions.ShowAll);
app.Map("/signalr", map =>
{
map.UseCors(CorsOptions.AllowAll);
var hubConfiguration = new HubConfiguration
{
EnableDetailedErrors = true
};
map.RunSignalR(hubConfiguration);
});
}
}
}
I suppose that if I will meet some error then I can see this in my browser.
It works fine in .NET, but there is some trouble in Mono. HTTP response with HTML-error is cut off to 2048 bytes. So I can see only first 2K of error page in browser:
<!DOCTYPE html>
<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta charset="utf-8" />
<title>Internal Server Error</title>
<style>
body {
font-family: 'Segoe UI',Tahoma,Arial,Helvetica,sans-serif;
font-size: .813em;
line-height: 1.4em;
color: #222;
}
h1, h2, h3, h4, h5 {
/*font-family: 'Segoe UI',Tahoma,Arial,Helvetica,sans-serif;*/
font-weight: 100;
}
h1 {
color: #44525e;
margin: 15px 0 15px 0;
}
h2 {
margin: 10px 5px 0 0;
}
h3 {
color: #363636;
margin: 5px 5px 0 0;
}
code {
font-family: consolas, "Courier New", courier, monospace;
}
body .titleerror {
padding: 3px;
}
body .location {
margin: 3px 0 10px 30px;
}
#header {
font-size: 18px;
padding-left: 0px;
padding-right: 0px;
padding-top: 15px;
padding-bottom: 15px;
border-top: 1px #ddd solid;
border-bottom: 1px #ddd solid;
margin-bottom: 0px;
}
#header li {
display: inline;
margin: 5px;
padding: 5px;
color: #a0a0a0;
}
#header li:hover {
background: #A9E4F9;
color: #fff;
}
#header li.selected {
background: #44C5F2;
color: #fff;
}
#stackpage ul {
list-style: none;
padding-left: 0;
margin: 0;
/*border-bottom: 1px #ddd solid;*/
}
#stackpage .stackerror {
padding: 5px;
border-bottom: 1px #ddd solid;
}
#stackpage .stackerror:hover {
background-color: #f0f0f0;
}
#stackpage .frame:hover {
background-color: #f0f0f0;
text-decoration: none;
}
#stackpage .frame {
padding: 2px;
margin: 0 0 0 30px;
border-bottom: 1px #ddd solid;
}
#stackpage .frame h3 {
padding: 5px;
margin: 0;
}
#stackpage .source {
padding: 0px;
}
#stackpage .source ol li {
font-family: consolas, "Courier New", courier, monospace;
white-space: pre;
}
#stackpage .source ol.highlight li {
/*color: #e22;*/
/*font-weight: bold;
It is reproduced with latest versions of Chrome, Firefox, IE. Which reason of so strange behaviour of Owin with Mono?
Related
I am trying to create a real-time chat with a database. Without SignalR it works as it's supposed to. However, I want to add real-time functionality. The application queries the database for the MessageId, and then it lists all the messages with the MessageId. I passed the MessageId as a parameter into the url. and use that to look through the database, e.g. sever:messages/open/{MessageId}. But signalR is not getting to the controller's Id. if I just have _FC.UserMessage.ToList(); without any parameters, it works fine. I just need to know how can i use it with the controller's parameter.
Update: I just did more test and when i take away the variables in the site.js file, i.e. ${v.Date}, ${v.Message} the messages appear. However, only three appear from one account appear. So this is a real head-scratcher. It seems like the way I'm naming the variables is wrong since it throws me an Uncaught TypeError: Cannot read properties of null (reading 'Date') error. And now the problem with only displaying three messages. Now I'm thinking it has nothing to do with the controller parameters, but the naming of the variables. I thought I could name it v.UM.Date since public IEnumerable<UserMessageModel> UM {get; set;} is the name of the variable I have in the UserMessagesObj.cs view model. But that's throwing me the same error.
MessagesController:
using Flubr.Areas.Identity.Data;
using Flubr.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.SignalR;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Flubr.Controllers
{
public class MessagesController : Controller
{
private readonly FlubrContext _FC;
private readonly UserManager<ApplicationUser> _UM;
private readonly IHubContext<SignalHub> _signal;
public MessagesController(FlubrContext FC, UserManager<ApplicationUser> UM, IHubContext<SignalHub> signal)
{
_FC = FC;
_UM = UM;
_signal = signal;
}
[HttpGet]
public IActionResult GetOpen(string id, UserMessagesObj umo)
{
var message = _FC.UserMessage.Include("applicationUser").Where(o => o.MessageId == id).Where(o => o.Message != "").ToList();
umo.UM = message;
return View(umo);
}
public IActionResult Open(string id, UserMessagesObj umo)
{
var message = _FC.UserMessage.Include("applicationUser").Where(o => o.MessageId == id).Where(o => o.Message != "").ToList();
umo.UM = message;
return View(umo);
}
[HttpPost]
public async Task<IActionResult> Open(string id, UserMessagesModel um, UserMessagesObj umo)
{
var message = _FC.UserMessage.Include("applicationUser").Where(o => o.MessageId == id).Where(o => o.Message != "").ToList();
Guid g = Guid.NewGuid();
umo.UM = message;
umo.UM2.UserMessageId = g;
umo.UM2.Id = _UM.GetUserAsync(User).Result.Id;
umo.UM2.MessageId = id;
umo.UM2.Date = DateTime.Now;
_FC.UserMessage.Add(umo.UM2);
await _FC.SaveChangesAsync();
await _signal.Clients.All.SendAsync("LoadData");
return View(umo);
}
}
}
Open.cshtml
#model UserMessagesObj
#using Microsoft.AspNetCore.Identity
#using Flubr.Areas.Identity.Data
#inject SignInManager<ApplicationUser> SignInManager
#inject UserManager<ApplicationUser> UserManager
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="sidebar.css">
<style>
* {
box-sizing: border-box;
}
body {
background-color: #abd9e9;
font-family: Arial;
}
#container {
width: 750px;
height: 800px;
background: #eff3f7;
margin: 0 auto;
font-size: 0;
border-radius: 5px;
overflow: hidden;
}
aside {
width: 260px;
height: 800px;
background-color: #3b3e49;
display: inline-block;
font-size: 15px;
vertical-align: top;
}
main {
width: 490px;
height: 800px;
display: inline-block;
font-size: 15px;
vertical-align: top;
}
aside header {
padding: 30px 20px;
}
aside input {
width: 100%;
height: 50px;
line-height: 50px;
padding: 0 50px 0 20px;
background-color: #5e616a;
border: none;
border-radius: 3px;
color: #fff;
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_search.png);
background-repeat: no-repeat;
background-position: 170px;
background-size: 40px;
}
aside input::placeholder {
color: #fff;
}
aside ul {
padding-left: 0;
margin: 0;
list-style-type: none;
overflow-y: scroll;
height: 690px;
}
aside li {
padding: 10px 0;
}
aside li:hover {
background-color: #5e616a;
}
h2,
h3 {
margin: 0;
}
aside li img {
border-radius: 50%;
margin-left: 20px;
margin-right: 8px;
}
aside li div {
display: inline-block;
vertical-align: top;
margin-top: 12px;
}
aside li h2 {
font-size: 14px;
color: #fff;
font-weight: normal;
margin-bottom: 5px;
}
aside li h3 {
font-size: 12px;
color: #7e818a;
font-weight: normal;
}
.status {
width: 8px;
height: 8px;
border-radius: 50%;
display: inline-block;
margin-right: 7px;
}
.green {
background-color: #58b666;
}
.orange {
background-color: #ff725d;
}
.blue {
background-color: #6fbced;
margin-right: 0;
margin-left: 7px;
}
main header {
height: 110px;
padding: 30px 20px 30px 40px;
}
main header>* {
display: inline-block;
vertical-align: top;
}
main header img:first-child {
border-radius: 50%;
}
main header img:last-child {
width: 24px;
margin-top: 8px;
}
main header div {
margin-left: 10px;
margin-right: 145px;
}
main header h2 {
font-size: 16px;
margin-bottom: 5px;
}
main header h3 {
font-size: 14px;
font-weight: normal;
color: #7e818a;
}
#chat {
padding-left: 0;
margin: 0;
list-style-type: none;
overflow-y: scroll;
height: 535px;
border-top: 2px solid #fff;
border-bottom: 2px solid #fff;
}
#chat li {
padding: 10px 30px;
}
#chat h2,
#chat h3 {
display: inline-block;
font-size: 13px;
font-weight: normal;
}
#chat h3 {
color: #bbb;
}
#chat .entete {
margin-bottom: 5px;
}
#chat .message {
padding: 20px;
color: #fff;
line-height: 25px;
max-width: 90%;
display: inline-block;
text-align: left;
border-radius: 5px;
}
#chat .me {
text-align: right;
}
#chat .you .message {
background-color: #58b666;
}
#chat .me .message {
background-color: #6fbced;
}
#chat .triangle {
width: 0;
height: 0;
border-style: solid;
border-width: 0 10px 10px 10px;
}
#chat .you .triangle {
border-color: transparent transparent #58b666 transparent;
margin-left: 15px;
}
#chat .me .triangle {
border-color: transparent transparent #6fbced transparent;
margin-left: 375px;
}
main footer {
height: 155px;
padding: 20px 30px 10px 20px;
}
main footer textarea {
resize: none;
border: none;
display: block;
width: 100%;
height: 80px;
border-radius: 3px;
padding: 20px;
font-size: 13px;
margin-bottom: 13px;
}
main footer textarea::placeholder {
color: #ddd;
}
main footer img {
height: 30px;
cursor: pointer;
}
main footer a {
text-decoration: none;
text-transform: uppercase;
font-weight: bold;
color: #6fbced;
vertical-align: top;
margin-left: 333px;
margin-top: 5px;
display: inline-block;
}
</style>
</head>
<body>
<div id="container">
<aside>
<header>
</header>
<ul>
<li>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/chat_avatar_01.jpg" alt="">
<div>
<h2>Prénom Nom</h2>
<h3>
<span class="status orange"></span>
offline
</h3>
</div>
</li>
</ul>
</aside>
<main>
<header>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/chat_avatar_01.jpg" alt="">
<div>
<h2>Chat with </h2>
<h3>already 1902 messages</h3>
</div>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_star.png" alt="">
</header>
<ul id="chat"> </ul>
<footer>
<form method ="post" asp-controller="Messages" asp-action="Open" >
<textarea asp-for="#Model.UM2.Message" placeholder="Type your message"></textarea>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_picture.png" alt="">
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_file.png" alt="">
<button type="submit" class="btn" style="float: right;">Send</button>
</form>
</footer>
</main>
</div>
</body>
</html>
site.js
#model UserMessagesObj
#using Microsoft.AspNetCore.Identity
#using Flubr.Areas.Identity.Data
#inject SignInManager<ApplicationUser> SignInManager
#inject UserManager<ApplicationUser> UserManager
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="sidebar.css">
<style>
* {
box-sizing: border-box;
}
body {
background-color: #abd9e9;
font-family: Arial;
}
#container {
width: 750px;
height: 800px;
background: #eff3f7;
margin: 0 auto;
font-size: 0;
border-radius: 5px;
overflow: hidden;
}
aside {
width: 260px;
height: 800px;
background-color: #3b3e49;
display: inline-block;
font-size: 15px;
vertical-align: top;
}
main {
width: 490px;
height: 800px;
display: inline-block;
font-size: 15px;
vertical-align: top;
}
aside header {
padding: 30px 20px;
}
aside input {
width: 100%;
height: 50px;
line-height: 50px;
padding: 0 50px 0 20px;
background-color: #5e616a;
border: none;
border-radius: 3px;
color: #fff;
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_search.png);
background-repeat: no-repeat;
background-position: 170px;
background-size: 40px;
}
aside input::placeholder {
color: #fff;
}
aside ul {
padding-left: 0;
margin: 0;
list-style-type: none;
overflow-y: scroll;
height: 690px;
}
aside li {
padding: 10px 0;
}
aside li:hover {
background-color: #5e616a;
}
h2,
h3 {
margin: 0;
}
aside li img {
border-radius: 50%;
margin-left: 20px;
margin-right: 8px;
}
aside li div {
display: inline-block;
vertical-align: top;
margin-top: 12px;
}
aside li h2 {
font-size: 14px;
color: #fff;
font-weight: normal;
margin-bottom: 5px;
}
aside li h3 {
font-size: 12px;
color: #7e818a;
font-weight: normal;
}
.status {
width: 8px;
height: 8px;
border-radius: 50%;
display: inline-block;
margin-right: 7px;
}
.green {
background-color: #58b666;
}
.orange {
background-color: #ff725d;
}
.blue {
background-color: #6fbced;
margin-right: 0;
margin-left: 7px;
}
main header {
height: 110px;
padding: 30px 20px 30px 40px;
}
main header>* {
display: inline-block;
vertical-align: top;
}
main header img:first-child {
border-radius: 50%;
}
main header img:last-child {
width: 24px;
margin-top: 8px;
}
main header div {
margin-left: 10px;
margin-right: 145px;
}
main header h2 {
font-size: 16px;
margin-bottom: 5px;
}
main header h3 {
font-size: 14px;
font-weight: normal;
color: #7e818a;
}
#chat {
padding-left: 0;
margin: 0;
list-style-type: none;
overflow-y: scroll;
height: 535px;
border-top: 2px solid #fff;
border-bottom: 2px solid #fff;
}
#chat li {
padding: 10px 30px;
}
#chat h2,
#chat h3 {
display: inline-block;
font-size: 13px;
font-weight: normal;
}
#chat h3 {
color: #bbb;
}
#chat .entete {
margin-bottom: 5px;
}
#chat .message {
padding: 20px;
color: #fff;
line-height: 25px;
max-width: 90%;
display: inline-block;
text-align: left;
border-radius: 5px;
}
#chat .me {
text-align: right;
}
#chat .you .message {
background-color: #58b666;
}
#chat .me .message {
background-color: #6fbced;
}
#chat .triangle {
width: 0;
height: 0;
border-style: solid;
border-width: 0 10px 10px 10px;
}
#chat .you .triangle {
border-color: transparent transparent #58b666 transparent;
margin-left: 15px;
}
#chat .me .triangle {
border-color: transparent transparent #6fbced transparent;
margin-left: 375px;
}
main footer {
height: 155px;
padding: 20px 30px 10px 20px;
}
main footer textarea {
resize: none;
border: none;
display: block;
width: 100%;
height: 80px;
border-radius: 3px;
padding: 20px;
font-size: 13px;
margin-bottom: 13px;
}
main footer textarea::placeholder {
color: #ddd;
}
main footer img {
height: 30px;
cursor: pointer;
}
main footer a {
text-decoration: none;
text-transform: uppercase;
font-weight: bold;
color: #6fbced;
vertical-align: top;
margin-left: 333px;
margin-top: 5px;
display: inline-block;
}
</style>
</head>
<body>
<div id="container">
<aside>
<header>
</header>
<ul>
<li>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/chat_avatar_01.jpg" alt="">
<div>
<h2>Prénom Nom</h2>
<h3>
<span class="status orange"></span>
offline
</h3>
</div>
</li>
</ul>
</aside>
<main>
<header>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/chat_avatar_01.jpg" alt="">
<div>
<h2>Chat with </h2>
<h3>already 1902 messages</h3>
</div>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_star.png" alt="">
</header>
<ul id="chat"> </ul>
<footer>
<form method ="post" asp-controller="Messages" asp-action="Open" >
<textarea asp-for="#Model.UM2.Message" placeholder="Type your message"></textarea>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_picture.png" alt="">
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_file.png" alt="">
<button type="submit" class="btn" style="float: right;">Send</button>
</form>
</footer>
</main>
</div>
</body>
</html>
SignalHub.cs
#model UserMessagesObj
#using Microsoft.AspNetCore.Identity
#using Flubr.Areas.Identity.Data
#inject SignInManager<ApplicationUser> SignInManager
#inject UserManager<ApplicationUser> UserManager
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="sidebar.css">
<style>
* {
box-sizing: border-box;
}
body {
background-color: #abd9e9;
font-family: Arial;
}
#container {
width: 750px;
height: 800px;
background: #eff3f7;
margin: 0 auto;
font-size: 0;
border-radius: 5px;
overflow: hidden;
}
aside {
width: 260px;
height: 800px;
background-color: #3b3e49;
display: inline-block;
font-size: 15px;
vertical-align: top;
}
main {
width: 490px;
height: 800px;
display: inline-block;
font-size: 15px;
vertical-align: top;
}
aside header {
padding: 30px 20px;
}
aside input {
width: 100%;
height: 50px;
line-height: 50px;
padding: 0 50px 0 20px;
background-color: #5e616a;
border: none;
border-radius: 3px;
color: #fff;
background-image: url(https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_search.png);
background-repeat: no-repeat;
background-position: 170px;
background-size: 40px;
}
aside input::placeholder {
color: #fff;
}
aside ul {
padding-left: 0;
margin: 0;
list-style-type: none;
overflow-y: scroll;
height: 690px;
}
aside li {
padding: 10px 0;
}
aside li:hover {
background-color: #5e616a;
}
h2,
h3 {
margin: 0;
}
aside li img {
border-radius: 50%;
margin-left: 20px;
margin-right: 8px;
}
aside li div {
display: inline-block;
vertical-align: top;
margin-top: 12px;
}
aside li h2 {
font-size: 14px;
color: #fff;
font-weight: normal;
margin-bottom: 5px;
}
aside li h3 {
font-size: 12px;
color: #7e818a;
font-weight: normal;
}
.status {
width: 8px;
height: 8px;
border-radius: 50%;
display: inline-block;
margin-right: 7px;
}
.green {
background-color: #58b666;
}
.orange {
background-color: #ff725d;
}
.blue {
background-color: #6fbced;
margin-right: 0;
margin-left: 7px;
}
main header {
height: 110px;
padding: 30px 20px 30px 40px;
}
main header>* {
display: inline-block;
vertical-align: top;
}
main header img:first-child {
border-radius: 50%;
}
main header img:last-child {
width: 24px;
margin-top: 8px;
}
main header div {
margin-left: 10px;
margin-right: 145px;
}
main header h2 {
font-size: 16px;
margin-bottom: 5px;
}
main header h3 {
font-size: 14px;
font-weight: normal;
color: #7e818a;
}
#chat {
padding-left: 0;
margin: 0;
list-style-type: none;
overflow-y: scroll;
height: 535px;
border-top: 2px solid #fff;
border-bottom: 2px solid #fff;
}
#chat li {
padding: 10px 30px;
}
#chat h2,
#chat h3 {
display: inline-block;
font-size: 13px;
font-weight: normal;
}
#chat h3 {
color: #bbb;
}
#chat .entete {
margin-bottom: 5px;
}
#chat .message {
padding: 20px;
color: #fff;
line-height: 25px;
max-width: 90%;
display: inline-block;
text-align: left;
border-radius: 5px;
}
#chat .me {
text-align: right;
}
#chat .you .message {
background-color: #58b666;
}
#chat .me .message {
background-color: #6fbced;
}
#chat .triangle {
width: 0;
height: 0;
border-style: solid;
border-width: 0 10px 10px 10px;
}
#chat .you .triangle {
border-color: transparent transparent #58b666 transparent;
margin-left: 15px;
}
#chat .me .triangle {
border-color: transparent transparent #6fbced transparent;
margin-left: 375px;
}
main footer {
height: 155px;
padding: 20px 30px 10px 20px;
}
main footer textarea {
resize: none;
border: none;
display: block;
width: 100%;
height: 80px;
border-radius: 3px;
padding: 20px;
font-size: 13px;
margin-bottom: 13px;
}
main footer textarea::placeholder {
color: #ddd;
}
main footer img {
height: 30px;
cursor: pointer;
}
main footer a {
text-decoration: none;
text-transform: uppercase;
font-weight: bold;
color: #6fbced;
vertical-align: top;
margin-left: 333px;
margin-top: 5px;
display: inline-block;
}
</style>
</head>
<body>
<div id="container">
<aside>
<header>
</header>
<ul>
<li>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/chat_avatar_01.jpg" alt="">
<div>
<h2>Prénom Nom</h2>
<h3>
<span class="status orange"></span>
offline
</h3>
</div>
</li>
</ul>
</aside>
<main>
<header>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/chat_avatar_01.jpg" alt="">
<div>
<h2>Chat with </h2>
<h3>already 1902 messages</h3>
</div>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_star.png" alt="">
</header>
<ul id="chat"> </ul>
<footer>
<form method ="post" asp-controller="Messages" asp-action="Open" >
<textarea asp-for="#Model.UM2.Message" placeholder="Type your message"></textarea>
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_picture.png" alt="">
<img src="https://s3-us-west-2.amazonaws.com/s.cdpn.io/1940306/ico_file.png" alt="">
<button type="submit" class="btn" style="float: right;">Send</button>
</form>
</footer>
</main>
</div>
</body>
</html>
StartUp.cs
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.HttpsPolicy;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Flubr
{
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
services.AddControllersWithViews();
services.AddSignalR();
services.AddControllers().AddJsonOptions(o => {
o.JsonSerializerOptions.PropertyNamingPolicy = null;
});
services.AddRazorPages();
}
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
app.UseBrowserLink();
}
else
{
app.UseExceptionHandler("/Home/Error");
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller=Home}/{action=Index}/{id?}");
endpoints.MapRazorPages();
endpoints.MapHub<SignalHub>("/SignalHub");
});
}
}
}
UserMessagesObj.cs:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Flubr.Models
{
public class UserMessagesObj
{
public IEnumerable<UserMessagesModel> UM { get; set; }
public UserMessagesModel UM2 { get; set; }
public MessagesModel MM { get; set; }
}
}
I am working on a custom menu control in ASP.Net.
I've created a separate new project on ASP.Net webform c# for menu and finally get the desire output which I want.
Desire Output
Now when I put menu control css and other HTML code in my running application which is on VB.Net then all custom css was gone and ASP.Net default CSS Classes override it. Below is my current output:
Here is my masterpage code:
<asp:SiteMapDataSource ID="SiteMapDataSource1" runat="server" ShowStartingNode="false" />
<asp:Menu
ID="Menu"
runat="server"
DataSourceID="SiteMapDataSource1"
Orientation="Horizontal"
OnMenuItemDataBound="OnMenuItemDataBound"
IncludeStyleBlock="false"
StaticEnableDefaultPopOutImage="false"
CssClass="AHMenu">
<LevelSubMenuStyles>
<asp:SubMenuStyle CssClass="AHlevel1" />
<asp:SubMenuStyle CssClass="AHlevel2" />
<asp:SubMenuStyle CssClass="AHlevel3" />
<asp:SubMenuStyle CssClass="AHlevel4" />
</LevelSubMenuStyles>
<LevelMenuItemStyles>
<asp:MenuItemStyle CssClass="AHlevel1Style" />
<asp:MenuItemStyle CssClass="AHlevel2Style" />
<asp:MenuItemStyle CssClass="AHlevel3Style" />
<asp:MenuItemStyle CssClass="AHlevel4Style" />
</LevelMenuItemStyles>
</asp:Menu>
In browser view source all my CSS gone and override with default CSS. As shown below:
Here is my CSS:
#Menu > ul.AHlevel1 > li:hover {
background-color: white;
}
#Menu > ul.AHlevel1 > li:hover a.AHlevel1Style {
color: black !important;
}
.AHMenu {
float: none !important;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
background: #1965b0;
}
.AHMenu * {
float: none !important;
}
.AHMenu a:hover {
text-decoration: none;
}
.AHMenu .AHlevel1Style {
cursor: pointer;
color: white;
}
.AHMenu .AHlevel2Style, .AHMenu .AHlevel3Style, .AHMenu .AHlevel4Style {
color: #1965b0;
}
.AHMenu .AHlevel4Style {
cursor: pointer;
}
.AHMenu .AHlevel1 {
order: 0;
margin-bottom: 0;
padding: 0;
width: inherit !important;
}
.AHMenu .AHlevel1 li {
display: inline-block;
position: static !important;
padding: 12px;
}
.AHMenu .AHlevel2 {
/*display: block !important;*/
background: white;
width: inherit !important;
padding: 0 40px;
border: 1px solid #1965b0;
border-top: none;
/*border-bottom-right-radius: 3px;
border-bottom-left-radius: 3px;*/
height: 250px;
}
.AHMenu .AHlevel2 li {
display: inline-block;
position: relative !important;
width: 200px;
padding: 12px 0;
padding-bottom: 0;
}
.AHMenu .AHlevel3 {
display: block !important;
padding: 0;
background: white;
left: 0 !important;
top: 70px !important;
border-bottom: 2px solid #1965b0;
}
.AHMenu .AHlevel3 li {
font-weight: 700;
font-family: calibri;
font-size: 19px;
display: inline-block;
position: initial;
width: auto;
margin: 6px 0;
padding: 0;
}
.AHMenu .AHlevel4 {
display: block !important;
padding: 0;
background: white;
left: 22px !important;
top: 38px !important;
}
.AHMenu .AHlevel4 li {
font-family: calibri;
font-size: 14px;
display: inline-block;
position: initial;
width: auto;
padding: 0;
margin: 0;
font-weight: 300;
white-space: nowrap;
}
.AHMenu .AHlevel4 li:before {
content: "►";
display: block;
float: left;
width: 1.2em;
color: #1965b0;
}
#AHMenu::after {
content: '';
flex-grow: 1;
order: 0;
}
Hi guys,
i have been debugging and reading for many hours but I can't seem to find the issue.
I'm not the most experienced coder so I turn to you guys.
I'm running an asp.net c# page created from a modified visual studio template.
In visual studio test every browser works like a charm but when now I published it to IIS, IE doesn't work anymore (other browsers do).
My master page:
<%# Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="Aanmelding.SiteMaster" %>
<!DOCTYPE html>
<html lang="en">
<head runat="server">
<meta charset="utf-8" />
<title>Portaal</title>
<asp:PlaceHolder runat="server">
<%: Scripts.Render("~/bundles/modernizr") %>
</asp:PlaceHolder>
<webopt:BundleReference runat="server" Path="/Content/css" />
<link href="~/favicon.ico" rel="shortcut icon" type="image/x-icon" />
<meta name="viewport" content="width=device-width" />
<asp:ContentPlaceHolder runat="server" ID="HeadContent" />
</head>
My page:
<%# Page Title="Portaal" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Aanmelding._Default" %>
<asp:Content runat="server" ID="FeaturedContent" ContentPlaceHolderID="FeaturedContent">
<section class="featured">
<div class="content-wrapper">
<hgroup class="title">
<h1>Welkom. </h1>
</hgroup>
</div>
</section>
My CSS:
html {
background-color: #e2e2e2;
margin: 0;
padding: 0;
}
.button {
border-top: 1px solid #ffffff;
padding: 9px 18px;
-webkit-border-radius: 40px;
-moz-border-radius: 40px;
border-radius: 40px;
color: #e80c4d;
font-size: 12px;
font-family: Georgia, Serif;
text-decoration: none;
vertical-align: middle;
}
.button:hover {
background: #e80c4e;
background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e80c4e));
background: -webkit-linear-gradient(top, #ffffff, #e80c4e);
background: -moz-linear-gradient(top, #ffffff, #e80c4e);
background: -ms-linear-gradient(top, #ffffff, #e80c4e);
background: -o-linear-gradient(top, #ffffff, #e80c4e);
color: white;
}
.button:active {
border-top-color: #ffffff;
background: #ffffff;
}
a.HyperLinkHover {
color: #95FBCF;
background-color:#ff0;
background-color: #377CB1; }
a.HyperLinkHover:visited { color:Purple;}
body {
background-color: #fff;
border-top: solid 10px #000;
color: #333;
font-size: .85em;
font-family: "Segoe UI", Verdana, Helvetica, Sans-Serif;
margin: 0;
padding: 0;
}
a {
color: #333;
outline: none;
padding-left: 3px;
padding-right: 3px;
text-decoration: underline;
}
a:link, a:visited,
a:active, a:hover {
color: #333;
}
a:hover {
background-color: #c7d1d6;
}
header, footer, hgroup,
nav, section {
display: block;
}
mark {
background-color: #a6dbed;
padding-left: 5px;
padding-right: 5px;
}
.float-left {
float: left;
}
.float-right {
float: right;
}
.clear-fix:after {
content: ".";
clear: both;
display: block;
height: 0;
visibility: hidden;
}
h1, h2, h3,
h4, h5, h6 {
color: #000;
margin-bottom: 0;
padding-bottom: 0;
}
h1 {
font-size: 2em;
}
h2 {
font-size: 1.75em;
}
h3 {
font-size: 1.2em;
}
h4 {
font-size: 1.1em;
}
h5, h6 {
font-size: 1em;
}
h5 a:link, h5 a:visited, h5 a:active {
padding: 0;
text-decoration: none;
}
/* main layout
----------------------------------------------------------*/
.content-wrapper {
margin: 0 auto;
max-width: 960px;
}
#body {
background-color: #fff;
clear: both;
padding-bottom: 35px;
}
.main-content {
background: url("../Images/accent.png") no-repeat;
padding-left: 10px;
padding-top: 10px;
}
header .content-wrapper {
padding-top: 20px;
}
footer {
clear: both;
background-color: #e80c4d;
font-size: .8em;
height: 10px;
}
/* site title
----------------------------------------------------------*/
.site-title {
color: #e80c4d;
font-family: Rockwell, Consolas, "Courier New", Courier, monospace;
font-size: 2.3em;
margin: 0;
}
.site-title a, .site-title a:hover, .site-title a:active {
background: none;
color: #c8c8c8;
outline: none;
text-decoration: none;
}
/* login
----------------------------------------------------------*/
#login {
display: block;
font-size: .85em;
margin: 0 0 10px;
text-align: right;
}
#login a {
background-color: #d3dce0;
margin-left: 10px;
margin-right: 3px;
padding: 2px 3px;
text-decoration: none;
}
#login a.username {
background: none;
margin-left: 0px;
text-decoration: underline;
}
#login ul {
margin: 0;
}
#login li {
display: inline;
list-style: none;
}
/* menu
----------------------------------------------------------*/
ul#menu {
font-size: 1.3em;
font-weight: 600;
margin: 0 0 5px;
padding: 0;
text-align: right;
}
ul#menu li {
display: inline;
list-style: none;
padding-left: 15px;
}
ul#menu li a {
background: none;
color: #000;
text-decoration: none;
}
ul#menu li a:hover {
color: #e80c4d;
text-decoration: none;
}
/* page elements
----------------------------------------------------------*/
/* featured */
.featured {
background-color: #e80c4d;
}
.featured .content-wrapper {
background-color: #e80c4d;
color: #3e5667;
padding: 20px 10px 10px 10px;
}
.featured hgroup.title h1, .featured hgroup.title h2 {
color: #fff;
}
.featured p {
font-size: 1.1em;
}
/* page titles */
hgroup.title {
margin-bottom: 10px;
}
hgroup.title h1, hgroup.title h2 {
display: inline;
}
hgroup.title h2 {
font-weight: normal;
margin-left: 3px;
}
/* features */
section.feature {
width: 300px;
float: left;
padding: 10px;
}
/* ordered list */
ol.round {
list-style-type: none;
padding-left: 0;
}
ol.round li {
margin: 25px 0;
padding-left: 45px;
}
ol.round li.zero {
background: url("../Images/orderedList0.png") no-repeat;
}
ol.round li.one {
background: url("../Images/orderedList1.png") no-repeat;
}
ol.round li.two {
background: url("../Images/orderedList2.png") no-repeat;
}
ol.round li.three {
background: url("../Images/orderedList3.png") no-repeat;
}
ol.round li.four {
background: url("../Images/orderedList4.png") no-repeat;
}
ol.round li.five {
background: url("../Images/orderedList5.png") no-repeat;
}
ol.round li.six {
background: url("../Images/orderedList6.png") no-repeat;
}
ol.round li.seven {
background: url("../Images/orderedList7.png") no-repeat;
}
ol.round li.eight {
background: url("../Images/orderedList8.png") no-repeat;
}
ol.round li.nine {
background: url("../Images/orderedList9.png") no-repeat;
}
/* content */
article {
float: left;
width: 70%;
}
aside {
float: right;
width: 25%;
}
aside ul {
list-style: none;
padding: 0;
}
aside ul li {
background: url("../Images/bullet.png") no-repeat 0 50%;
padding: 2px 0 2px 20px;
}
.label {
font-weight: 700;
}
/* login page */
#loginForm {
border-right: solid 2px #c8c8c8;
float: left;
width: 55%;
}
#loginForm .validation-error {
display: block;
margin-left: 15px;
}
#socialLoginForm {
margin-left: 40px;
float: left;
width: 40%;
}
#socialLoginForm h2 {
margin-bottom: 5px;
}
fieldset.open-auth-providers {
margin-top: 15px;
}
fieldset.open-auth-providers button {
margin-bottom: 12px;
}
/* contact */
.contact h3 {
font-size: 1.2em;
}
.contact p {
margin: 5px 0 0 10px;
}
.contact iframe {
border: 1px solid #333;
margin: 5px 0 0 10px;
}
/* forms */
fieldset {
border: none;
margin: 0;
padding: 0;
}
fieldset legend {
display: none;
}
fieldset ol {
padding: 0;
list-style: none;
}
fieldset ol li {
padding-bottom: 5px;
}
label {
display: inline;
font-weight: 600;
}
label.checkbox {
display: block;
}
input:focus, textarea:focus {
border: 1px solid #7ac0da;
}
input[type="checkbox"] {
background: transparent;
border: inherit;
width: auto;
}
input[type="submit"],
input[type="button"],
button {
background-color: #d3dce0;
border: 1px solid #787878;
cursor: pointer;
font-size: 1.2em;
font-weight: 600;
padding: 7px;
margin-right: 8px;
width: auto;
}
td input[type="submit"],
td input[type="button"],
td button {
font-size: 1em;
padding: 4px;
margin-right: 4px;
}
/* info and errors */
.message-info {
border: 1px solid;
clear: both;
padding: 10px 20px;
}
.message-error {
clear: both;
color: #e80c4d;
font-size: 1.1em;
font-weight: bold;
margin: 20px 0 10px 0;
}
.message-success {
color: #7ac0da;
font-size: 1.3em;
font-weight: bold;
margin: 20px 0 10px 0;
}
.error {
color: #e80c4d;
}
/* styles for validation helpers */
.field-validation-error {
color: #e80c4d;
font-weight: bold;
}
.field-validation-valid {
display: none;
}
input.input-validation-error {
border: 1px solid #e80c4d;
}
input[type="checkbox"].input-validation-error {
border: 0 none;
}
.validation-summary-errors {
color: #e80c4d;
font-weight: bold;
font-size: 1.1em;
}
.validation-summary-valid {
display: none;
}
/* tables
----------------------------------------------------------*/
table {
border-collapse: collapse;
border-spacing: 0;
margin-top: 0.75em;
border: 0 none;
}
th {
font-size: 1.2em;
text-align: left;
border: none 0px;
padding-left: 0;
}
th a {
display: block;
position: relative;
}
th a:link, th a:visited, th a:active, th a:hover {
color: #333;
font-weight: 600;
text-decoration: none;
padding: 0;
}
th a:hover {
color: #000;
}
th.asc a, th.desc a {
margin-right: .75em;
}
th.asc a:after, th.desc a:after {
display: block;
position: absolute;
right: 0em;
top: 0;
font-size: 0.75em;
}
th.asc a:after {
content: '▲';
}
th.desc a:after {
content: '▼';
}
td {
padding: 0.25em 2em 0.25em 0em;
border: 0 none;
}
tr.pager td {
padding: 0 0.25em 0 0;
}
/********************
* Mobile Styles *
********************/
#media only screen and (max-width: 850px) {
/* header
----------------------------------------------------------*/
header .float-left,
header .float-right {
float: none;
}
/* logo */
header .site-title {
margin: 10px;
text-align: center;
}
/* login */
#login {
font-size: .85em;
margin: 0 0 12px;
text-align: center;
}
#login ul {
margin: 5px 0;
padding: 0;
}
#login li {
display: inline;
list-style: none;
margin: 0;
padding: 0;
}
#login a {
background: none;
color: #999;
font-weight: 600;
margin: 2px;
padding: 0;
}
#login a:hover {
color: #333;
}
/* menu */
nav {
margin-bottom: 5px;
}
ul#menu {
margin: 0;
padding: 0;
text-align: center;
}
ul#menu li {
margin: 0;
padding: 0;
}
/* main layout
----------------------------------------------------------*/
.main-content,
.featured + .main-content {
background-position: 10px 0;
}
.content-wrapper {
padding-right: 10px;
padding-left: 10px;
}
.featured .content-wrapper {
padding: 10px;
}
/* page content */
article, aside {
float: none;
width: 100%;
}
/* ordered list */
ol.round {
list-style-type: none;
padding-left: 0;
}
ol.round li {
padding-left: 10px;
margin: 25px 0;
}
ol.round li.zero,
ol.round li.one,
ol.round li.two,
ol.round li.three,
ol.round li.four,
ol.round li.five,
ol.round li.six,
ol.round li.seven,
ol.round li.eight,
ol.round li.nine {
background: none;
}
/* features */
section.feature {
float: none;
padding: 10px;
width: auto;
}
section.feature img {
color: #999;
content: attr(alt);
font-size: 1.5em;
font-weight: 600;
}
/* forms */
input {
width: 90%;
}
/* login page */
#loginForm {
border-right: none;
float: none;
width: auto;
}
#loginForm .validation-error {
display: block;
margin-left: 15px;
}
#socialLoginForm {
margin-left: 0;
float: none;
width: auto;
}
/* footer
----------------------------------------------------------*/
footer .float-left,
footer .float-right {
float: none;
}
footer {
text-align: center;
height: auto;
padding: 10px 0;
}
footer p {
margin: 0;
}
}
/* END: Mobile Styles */
</pre>**
Can somebody help me?
Many CSS3 features (like round border) are not supported in IE8 and under versions, better to use IE10 Or later one
i found the problem.
When opening my site, the IE11 went to compatiblity mode IE7.
After toying around in the developer mode i tried switching the document mode to 11 and it immediately worked like a charm.
I simply added:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
to my master page, did a refresh and now everything works.
Thank you guys, for the responses.
I am very new to programing and this is my first project. I am trying to print out just the information shown in the screen shots, which do print out. Which is the "Caplugs West" "PN" "QTY" and "B#". This print fine going to a normal printer and normal paper size. But I am trying to print this information to a label and when I print it to the label it prints out the the whole page even the bottom blank part of it with no information. I just want to print the information and that's it. I do not want to print the header and footer and I do not want to print the blank part of the page. Is there a way to do this?
here is my Index View Model
#model NavisionStore.WebUI.Models.PrintIndexViewModel
#{
ViewBag.Title = "Bag Labels: Your Print";
}
<h2>Caplugs West</h2>
<table>
<tbody>
#foreach(var line in Model.Print.Lines) {
<tr>
<td>PN: #line.Product.PartName</td>
</tr>
<tr>
<td>QTY: #line.Product.Quantity</td>
</tr>
<tr>
<td>B# #line.Product.BagNumber</td>
</tr>
}
</tbody>
</table>
<p align="center" class="actionButtons noprint">
Continue shopping
</p>
Her is my Site.css
body {
font-size: .85em;
font-family: "Segoe UI", Verdana, Helvetica, Sans-Serif;
color: #232323;
background-color: #fff;
}
header, footer, nav, section {
display: block;
}
/* Styles for basic forms
-----------------------------------------------------------*/
fieldset {
border: 1px solid #ddd;
padding: 0 1.4em 1.4em 1.4em;
margin: 0 0 1.5em 0;
}
legend {
font-size: 1.2em;
font-weight: bold;
}
textarea {
min-height: 75px;
}
.editor-label {
margin: 1em 0 0 0;
}
.editor-field {
margin: 0.5em 0 0 0;
}
/* Styles for validation helpers
-----------------------------------------------------------*/
.field-validation-error {
color: #f00;
}
.field-validation-valid {
display: none;
}
.input-validation-error {
border: 1px solid #f00;
background-color: #fee;
}
.validation-summary-errors {
font-weight: bold;
color: #f00;
}
.validation-summary-valid {
display: none;
}
BODY {
font-family: Cambria, Georgia, "Times New Roman"; margin: 0;
}
DIV#header DIV.title, DIV.item H3, DIV.item H4, DIV.pager A {
font: bold 1em "Arial Narrow", "Franklin Gothic Medium", Arial;
}
DIV#header {
background-color: #444;
border-bottom: 2px solid #111;
color: white;
}
DIV#header DIV.title {
font-size: 2em;
padding: .6em;
}
DIV#content {
border-left: 2px solid gray;
margin-left: 9em;
padding: 1em;
}
DIV#categories {
float: left;
width: 8em;
padding: .3em;
}
DIV.item {
border-top: 1px dotted gray;
padding-top: .7em;
margin-bottom: .7em;
}
DIV.item:first-child {
border-top: none;
padding-top: 0;
}
DIV.item H3 {
font-size: 1.3em;
margin: 0 0 .25em 0;
}
DIV.item H4 {
font-size: 1.1em;
margin: .4em 0 0 0;
}
DIV.pager {
text-align: right;
border-top: 2px solid silver;
padding: .5em 0 0 0;
margin-top: 1em;
}
DIV.pager A {
font-size: 1.1em;
color: #666;
text-decoration: none;
padding: 0 .4em 0 .4em;
}
DIV.pager A:hover {
background-color: silver;
}
DIV.pager A.selected {
background-color: #353535;
color: white;
}
/*This styles the left menu pane*/
DIV#categories A {
font: bold 1.1em "Arial Narrow","Franklin Gothic Medium",Arial;
display: block;
text-decoration: none;
padding: .6em;
border-bottom: 1px solid silver;
}
DIV#categories A.selected {
background-color: #666;
color: white;
}
DIV#categories A.hover {
background-color: #CCC;
}
DIV#categories A.selected:hover {
background-color: #666;
}
FORM {
margin: 0;
padding: 0;
}
DIV.item FORM {
float: right;
}
DIV.item INPUT {
color: white;
background-color: #333;
border: 1px solid black;
cursor: pointer;
}
H2 {
margin-top: 0.3em;
}
.actionButtons A, INPUT.actionButtons {
font: .8em Arial;
color: white;
margin: .5em;
text-decoration: none;
padding: .15em 1.5em .2em 1.5em;
background-color: #353535;
border: 1px solid black;
}
#media print {
.noprint {
display: none;
}
}
#media print {
#header, #categories, .actionButtons {
display: none;
}
DIV#content {
border-left: 0;
margin-left: 0;
}
}
I am trying to get my labels and text boxes to line up and I'm not getting it work right.
Here is what I have:
AddCustomer.cshtml
#model SuburbanCustPortal.Models.AddCustomerModel
#{
ViewBag.Title = "Add an Existing Account";
}
<h2>Change Password</h2>
<p>
Use the form below to add an existing account to your web login.
</p>
<script src="#Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
<script src="#Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>
#using (Html.BeginForm())
{
#Html.ValidationSummary(true, "Account not found. Please verify the infomartion below and try again.")
<div>
<fieldset>
<legend>Account Information</legend>
<p>
<span class="smalllabel">
#Html.LabelFor(m => m.Branch)
</span>
<span class="largelabel">
#Html.LabelFor(m => m.AccountNumber)
</span>
<br />
<span class="smalltextbox">
#Html.TextBoxFor(m => m.Branch)
#Html.ValidationMessageFor(m => m.Branch)
</span>
<span class="largetextbox">
#Html.TextBoxFor(m => m.AccountNumber)
#Html.ValidationMessageFor(m => m.AccountNumber)
</span>
</p>
<div class="editor-label">
AND
</div>
<div class="editor-label">
#Html.LabelFor(m => m.LastName)
</div>
<div class="editor-field">
#Html.TextBoxFor(m => m.LastName)
#Html.ValidationMessageFor(m => m.LastName)
</div>
<div class="editor-label">
OR
</div>
<div class="editor-label">
#Html.LabelFor(m => m.PhoneNumber)
</div>
<div class="editor-field">
#Html.TextBoxFor(m => m.PhoneNumber)
#Html.ValidationMessageFor(m => m.PhoneNumber)
</div>
<p>
<input type="submit" value="Register" />
</p>
</fieldset>
</div>
}
This is my Site.css:
/*----------------------------------------------------------
The base color for this template is #5c87b2. If you'd like
to use a different color start by replacing all instances of
#5c87b2 with your new color.
----------------------------------------------------------*/
body {
background-color: #5c87b2;
font-size: .85em;
font-family: "Trebuchet MS", Verdana, Helvetica, Sans-Serif;
margin: 0;
padding: 0;
color: #696969;
}
a:link {
color: #034af3;
text-decoration: underline;
}
a:visited {
color: #505abc;
}
a:hover {
color: #1d60ff;
text-decoration: none;
}
a:active {
color: #12eb87;
}
p, ul {
margin-bottom: 20px;
line-height: 1.6em;
}
header,
footer,
nav,
section {
display: block;
}
/* HEADINGS
----------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {
font-size: 1.5em;
color: #000;
}
h1 {
font-size: 2em;
padding-bottom: 0;
margin-bottom: 0;
}
h2 {
padding: 0 0 10px 0;
}
h3 {
font-size: 1.2em;
}
h4 {
font-size: 1.1em;
}
h5, h6 {
font-size: 1em;
}
/* PRIMARY LAYOUT ELEMENTS
----------------------------------------------------------*/
/* you can specify a greater or lesser percentage for the
page width. Or, you can specify an exact pixel width. */
.page {
width: 90%;
margin-left: auto;
margin-right: auto;
}
header, #header {
position: relative;
margin-bottom: 0px;
color: #000;
padding: 0;
}
header h1, #header h1 {
font-weight: bold;
padding: 5px 0;
margin: 0;
color: #fff;
border: none;
line-height: 2em;
font-size: 32px !important;
text-shadow: 1px 1px 2px #111;
}
#main {
padding: 30px 30px 15px 30px;
background-color: #fff;
border-radius: 4px 0 0 0;
-webkit-border-radius: 4px 0 0 0;
-moz-border-radius: 4px 0 0 0;
}
footer,
#footer {
background-color: #fff;
color: #999;
padding: 10px 0;
text-align: center;
line-height: normal;
margin: 0 0 30px 0;
font-size: .9em;
border-radius: 0 0 4px 4px;
-webkit-border-radius: 0 0 4px 4px;
-moz-border-radius: 0 0 4px 4px;
}
/* TAB MENU
----------------------------------------------------------*/
ul#menu {
border-bottom: 1px #5C87B2 solid;
padding: 0 0 2px;
position: relative;
margin: 0;
text-align: right;
}
ul#menu li {
display: inline;
list-style: none;
}
ul#menu li#greeting {
padding: 10px 20px;
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
color: #fff;
}
ul#menu li a {
padding: 10px 20px;
font-weight: bold;
text-decoration: none;
line-height: 2.8em;
background-color: #e8eef4;
color: #034af3;
border-radius: 4px 4px 0 0;
-webkit-border-radius: 4px 4px 0 0;
-moz-border-radius: 4px 4px 0 0;
}
ul#menu li a:hover {
background-color: #fff;
text-decoration: none;
}
ul#menu li a:active {
background-color: #a6e2a6;
text-decoration: none;
}
ul#menu li.selected a {
background-color: #fff;
color: #000;
}
/* FORM LAYOUT ELEMENTS
----------------------------------------------------------*/
fieldset {
border: 1px solid #ddd;
padding: 0 1.4em 1.4em 1.4em;
margin: 0 0 1.5em 0;
}
legend {
font-size: 1.2em;
font-weight: bold;
}
textarea {
min-height: 75px;
}
input[type="text"],
input[type="password"] {
border: 1px solid #ccc;
padding: 2px;
font-size: 1.2em;
color: #444;
width: 200px;
}
select {
border: 1px solid #ccc;
padding: 2px;
font-size: 1.2em;
color: #444;
}
input[type="submit"] {
font-size: 1.2em;
padding: 5px;
}
/* TABLE
----------------------------------------------------------*/
table {
border: solid 1px #e8eef4;
border-collapse: collapse;
}
table td {
padding: 5px;
border: solid 1px #e8eef4;
}
table th {
padding: 6px 5px;
text-align: left;
background-color: #e8eef4;
border: solid 1px #e8eef4;
}
/* MISC
----------------------------------------------------------*/
.clear {
clear: both;
}
.error {
color: Red;
}
nav,
#menucontainer {
margin-top: 40px;
}
div#title {
display: block;
float: left;
text-align: left;
}
#logindisplay {
font-size: 1.1em;
display: block;
text-align: right;
margin: 10px;
color: White;
}
#logindisplay a:link {
color: white;
text-decoration: underline;
}
#logindisplay a:visited {
color: white;
text-decoration: underline;
}
#logindisplay a:hover {
color: white;
text-decoration: none;
}
/* Styles for validation helpers
-----------------------------------------------------------*/
.field-validation-error {
color: #ff0000;
}
.field-validation-valid {
display: none;
}
.input-validation-error {
border: 1px solid #ff0000;
background-color: #ffeeee;
}
.validation-summary-errors {
font-weight: bold;
color: #ff0000;
}
.validation-summary-valid {
display: none;
}
/* Styles for editor and display helpers
----------------------------------------------------------*/
.display-label,
.editor-label {
margin: 1em 0 0 0;
}
.display-field,
.editor-field {
margin: 0.5em 0 0 0;
}
.text-box {
width: 30em;
}
.text-box.multi-line {
height: 6.5em;
}
.tri-state {
width: 6em;
}
/* custom created by eric */
.smalllabel {
margin: 1em 0 0 0;
width: 30em;
}
.smalltextbox {
margin: 1em 0 0 0;
width: 30em;
}
.largelabel {
margin: 1em 0 0 0;
width: 60em;
}
.largetextbox {
margin: 1em 0 0 0;
width: 60em;
}
And this is the results:
I am trying to get the Branch label and text box to be the same small size and the account number to be the larger (same) size.
Apparently I'm not getting the css classes right in the code.
Any ideas what I am doing wrong?
try using -
#Html.TextBoxFor(m => m.Branch, new { #class = "smalltextbox" })
this will apply the class to the textbox directly and not the span wrapper - I think you are using the default css file with a razor page that contains a css class that is applying to your textbox while you are applying your css to the span wrapper.
Also, smalltextbox and smalllabel look the same to me :) - not sure if you need them both.
Make smalltextbox and small label float: left.