Problem placing a customized select-box next to a searchbar in html - html

I have created both a select-box and a searchbar in html. Now I want to place both elements next to each other. I thought this would be possible by placing both elements into another div-container with display set to inline. But this doesn't really solve the issue.
.select-search-container {
display: inline;
}
.select-box {
display: flex;
flex-direction: column;
width: 400px;
}
.search-bar {
max-width: 400px;
border: none;
position: relative;
box-sizing: border-box;
left: calc(98% - 400px);
top: 20px;
}
#searchBarInput {
background: transparent;
padding: 12px 24px;
border-radius: 8px;
border: 2px solid black;
width: 100%;
box-sizing: border-box;
}
.search-bar__icon {
position: absolute;
height: 100%;
left: 90%;
top: 25%;
}
<div class="select-search-container">
<div class="select-box">
<div class="options-container">
<div class="option">
<input type="radio" class="radio" name="category" id="apples">
<label for="apples">apples</label>
</div>
<div class="option">
<input type="radio" class="radio" name="category" id="bananas">
<label for="bananas">bananas</label>
</div>
<div class="option">
<input type="radio" class="radio" name="category" id="lemons">
<label for="lemons">lemons</label>
</div>
</div>
<div class="selected">
Pick a fruit
</div>
</div>
<div class="search-bar" id="searchBar">
<input type="text" placeholder="Search Fruit" id="searchBarInput">
<i class="material-icons search-bar__icon">search</i>
</div>
</div>
As you can see, I have created the select-box using radio-buttons. I like the styling of this better than a normal select-box. Basically, I am showing the selected-div all the time and upon clicking on this div, I show the options-container. The display of the select-box is set to flex, with flex-direction column, as I want the options-container to be placed below the selected-div:
I am trying to place the searchbar next to the select-box. For this purpose I am also playing around with the left-, top- etc. specifiers. It doesn't really work though. When changing the display-type of the wrapper from inline to inline-flex, it kind of works, but the size of my searchbar shrinks and the icon isn't placed where I want it to be. I know this is a very specific question. I am very surprised that it doesn't work though and would really appreciate an explanation.

.select-search-container {
display: flex;
justify-content: space-between;
}
.select-box {
}
.search-bar {
max-width: 400px;
border: none;
position: relative;
box-sizing: border-box;
top: 20px;
}
#searchBarInput {
background: transparent;
padding: 12px 24px;
border-radius: 8px;
border: 2px solid black;
width: 100%;
box-sizing: border-box;
}
.search-bar__icon {
position: absolute;
height: 100%;
left: 90%;
top: 25%;
}
<div class="select-search-container">
<div class="select-box">
<div class="options-container">
<div class="option">
<input type="radio" class="radio" name="category" id="apples">
<label for="apples">apples</label>
</div>
<div class="option">
<input type="radio" class="radio" name="category" id="bananas">
<label for="bananas">bananas</label>
</div>
<div class="option">
<input type="radio" class="radio" name="category" id="lemons">
<label for="lemons">lemons</label>
</div>
</div>
<div class="selected">
Pick a fruit
</div>
</div>
<div class="search-bar" id="searchBar">
<input type="text" placeholder="Search Fruit" id="searchBarInput">
<i class="material-icons search-bar__icon">search</i>
</div>
</div>

Related

Border transition is working to the right, but not to the left

I have six separate options. I want the black border to slide left and right smoothly on clicking any of the options. When I click on “Service Providers”, the black bottom border must slide smoothly towards right. When I click on “Friends”, it should slide smoothly towards left. I want to achieve this with CSS transitions. It is working fine when I click the option on the right, but the left transition is not working.
.row {
background-color: #f4f4f4;
border-bottom: 1px solid #dbdbdb;
text-align: center;
border-right: 1px solid #dbdbdb;
margin: 0px;
}
span {
position: relative;
left: 0;
bottom: 0;
width: 16.33%;
border-bottom: 2px black solid;
transition: all .5s;
}
#friendBox:checked~span {
left: 0%;
}
#sellerBox:checked~span {
left: 16.33%;
}
#familyBox:checked~span {
left: 33.33%;
}
#clientsBox:checked~span {
left: 50%;
}
#childrenBox:checked~span {
left: 67%;
}
#elderBox:checked~span {
left: 83.75%;
}
input[type="radio"] {
position: absolute;
left: -100vw;
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<input type="radio" id="friendBox"></input>
<input type="radio" id="sellerBox"></input>
<input type="radio" id="familyBox"></input>
<input type="radio" id="clientsBox"></input>
<input type="radio" id="childrenBox"></input>
<input type="radio" id="elderBox"></input>
<div class="col-sm-2">
<label for="friendBox">Friends</label>
</div>
<div class="col-sm-2">
<label for="sellerBox">Service Providers</label>
</div>
<div class="col-sm-2">
<label for="familyBox">Family</label>
</div>
<div class="col-sm-2">
<label for="clientsBox">Clients</label>
</div>
<div class="col-sm-2">
<label for="childrenBox">Children</label>
</div>
<div class="col-sm-2">
<label for="elderBox">Elders</label>
</div>
<span></span>
</div>
</div>
</body>
</html>
You don’t use radio buttons correctly.
The purpose of radio buttons is to have at most one radio button active among a group of radio buttons.
The six radio buttons you have are independent from each other, so toggling one doesn’t toggle the existing active one.
See the documentation.
You need to use the same name for all six radio buttons.
Since they define your menu, let’s call it name="menu".
Another thing: </input> isn’t valid; remove it.
Another suggestion: your <label>s don’t fill the entire height of the menu item; replace the <div>s by the <label>s directly.
They still appear to have some bottom margin, but I’m sure you can find another solution for this.
.row {
background-color: #f4f4f4;
border-bottom: 1px solid #dbdbdb;
text-align: center;
border-right: 1px solid #dbdbdb;
margin: 0px;
}
span {
position: relative;
left: 0;
bottom: 0;
width: 16.33%;
border-bottom: 2px black solid;
transition: all .5s;
}
#friendBox:checked~span {
left: 0%;
}
#sellerBox:checked~span {
left: 16.33%;
}
#familyBox:checked~span {
left: 33.33%;
}
#clientsBox:checked~span {
left: 50%;
}
#childrenBox:checked~span {
left: 67%;
}
#elderBox:checked~span {
left: 83.75%;
}
input[type="radio"] {
position: absolute;
left: -100vw;
}
<!DOCTYPE html>
<html>
<head>
<title></title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<div class="row">
<input id="friendBox" type="radio" name="menu">
<input id="sellerBox" type="radio" name="menu">
<input id="familyBox" type="radio" name="menu">
<input id="clientsBox" type="radio" name="menu">
<input id="childrenBox" type="radio" name="menu">
<input id="elderBox" type="radio" name="menu">
<label class="col-sm-2" for="friendBox">Friends</label>
<label class="col-sm-2" for="sellerBox">Service Providers</label>
<label class="col-sm-2" for="familyBox">Family</label>
<label class="col-sm-2" for="clientsBox">Clients</label>
<label class="col-sm-2" for="childrenBox">Children</label>
<label class="col-sm-2" for="elderBox">Elders</label>
<span></span>
</div>
</div>
</body>
</html>

Can't get text box on same line as checkbox

I have a form with a checkbox section. The last option is a text field for a custom entry, but I can't get the field onto the same line as the checkbox.
Picture for reference
HTML (I included the option before it as well for reference):
<li>
<label class="container">Legal
<input id="legal" name="legal" type="checkbox" value="1">
<span class="checkmark" class="square"></span>
</label>
</li>
<li>
<label class="container">
<input id="other" name="other" type="checkbox" value="1">
<span class="checkmark" class="square"></span>
</label>
<input id="otherText" maxlength="40" name="otherText" size="10" type="text" placeholder="Other...">
<span class="bar" style="width: 150px;"></span>
</li>
CSS:
#otherText{
font-size:.9em;
width: 150px;
display:block;
border:none;
color: #fff;
background-color: transparent;
border-bottom:1px solid #757575;
}
#otherText:focus { outline:none; }
<li>
<input id="legal" name="legal" type="checkbox" value="1">
<label class="container">Legal
<span class="checkmark" class="square"></span>
</label>
</li>
<li>
<label class="container">
<input id="other" name="other" type="checkbox" value="1">
<span class="checkmark" class="square"></span>
</label>
<input id="otherText" maxlength="40" name="otherText" size="10" type="text" placeholder="Other...">
<span class="bar" style="width: 150px;"></span>
</li>
CSS -
li {
display: flex;
}
Does this help?
Try display:inline, rather than display:block for your #otherText input. Check out this page for info about display options.
To me it looks as if inline-block will make a difference, and so did removing your color:#fff line:
#otherText{
font-size:.9em;
width: 150px;
display:inline-block;
border:none;
background-color: transparent;
border-bottom:1px solid #757575;
}
#otherText:focus { outline:none; }
<ul>
<li>
<label class="container">Legal
<input id="legal" name="legal" type="checkbox" value="1">
<!--span class="checkmark" class="square"></span-->
</label>
</li>
<li>
<label class="container">
<input id="other" name="other" type="checkbox" value="1">
<!--span class="checkmark" class="square"></span-->
</label>
<input id="otherText" maxlength="40" name="otherText" size="10" type="text" placeholder="Other...">
<span class="bar" style="width: 150px;"></span>
</li>
</ul>
As I did not see any merrit in your <span class="checkmark"> I commented them out out .
The problem was with the "container" class. It was set to display: block.
To solve, I removed the "container" class from the "other" option, and assigned it a unique id with all of the same styling except for display: block.
OP eventually found the solution on their own, but I would like to add something for future reference. I often in time see Flexbox being overlooked.
Flexbox is a great tool for exactly these kind of problems, which rely on grid. I would encourage everyone to read up on Flexbox, especially these properties:
flex-direction
flex-wrap
flex-grow
flex-shrink
flex-basis
justify-content
order
If you master these 7 properties, then grid troubles will be something of the past.
Pair it with max-width properties, padding, margin and what else you'd need to make the grid fit your design.
Often at times, CSS frameworks, such as Bootstrap, can be quite overkill if the project is of a small nature. CSS frameworks should only be justified if you can utilize multiple aspects of it over a larger project. Using Bootstrap for grid alone is not ideal. With that said, Bootstrap does offer a very powerful grid layout with the use of the classes row and col. It's worth reading up on.
Example of using flex with the current problem at hand:
HTML:
<div class="row container">
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="1" />
<span class="cb-text">Dev Team</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="2" />
<span class="cb-text">Product Manager</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="3" />
<span class="cb-text">Security / SecOps</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="4" />
<span class="cb-text">DevOps / CI/CD</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="5" />
<span class="cb-text">Legal</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="6" />
<input type="text" class="cb-text other-text" placeholder="Other..." />
</div>
</div>
CSS:
.row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
flex: 0 0 100%;
max-width: 100%;
}
.container {
width: 650px;
height: 180px;
background-color: #4F4F4F;
padding: 15px;
justify-content: space-between;
margin-left: auto;
margin-right: auto;
font-size: 25px;
color: #FFFFFF;
}
.cb-container {
flex: 0 0 45%;
max-width: 45%;
padding-left: 15px;
padding-right: 15px;
justify-content: flex-start;
align-items: center;
gap: 8px;
}
.cb-element {
display: flex;
flex-direction: column;
flex: 0 0 25px;
max-width: 25px;
height: 25px;
}
input.other-text {
display: flex;
flex-direction: column;
flex: 0 0 65%;
max-width: 65%;
color: #FFFFFF;
font-size: 25px;
border-top: none;
border-left: none;
border-right: none;
border-bottom: 3px solid #B3B3B3;
background-color: transparent;
outline: none;
}
Snippet Example:
.row {
display: flex;
flex-direction: row;
flex-wrap: wrap;
flex: 0 0 100%;
max-width: 100%;
}
.container {
width: 650px;
height: 180px;
background-color: #4F4F4F;
padding: 15px;
justify-content: space-between;
margin-left: auto;
margin-right: auto;
font-size: 25px;
color: #FFFFFF;
}
.cb-container {
flex: 0 0 45%;
max-width: 45%;
padding-left: 15px;
padding-right: 15px;
justify-content: flex-start;
align-items: center;
gap: 8px;
}
.cb-element {
display: flex;
flex-direction: column;
flex: 0 0 25px;
max-width: 25px;
height: 25px;
}
input.other-text {
display: flex;
flex-direction: column;
flex: 0 0 65%;
max-width: 65%;
color: #FFFFFF;
font-size: 25px;
border-top: none;
border-left: none;
border-right: none;
border-bottom: 3px solid #B3B3B3;
background-color: transparent;
outline: none;
}
<div class="row container">
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="1" />
<span class="cb-text">Dev Team</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="2" />
<span class="cb-text">Product Manager</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="3" />
<span class="cb-text">Security / SecOps</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="4" />
<span class="cb-text">DevOps / CI/CD</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="5" />
<span class="cb-text">Legal</span>
</div>
<div class="row cb-container">
<input type="checkbox" class="cb-element" value="6" />
<input type="text" class="cb-text other-text" placeholder="Other..." />
</div>
</div>
Codepen example here.
Useful links:
https://css-tricks.com/snippets/css/a-guide-to-flexbox/
https://getbootstrap.com/docs/4.0/layout/grid/

Drawing a line behind range input

I'm trying to implement a Likert scale UI. I want to have the green line go behind the radio buttons. I tried changing the z-index but no luck...
#container {
text-align: justify;
background-color: #ff5050;
position: relative;
}
.line {
width: 100%;
height: 2px;
background-color: green;
position: absolute;
top: 5px;
z-index: 0;
}
input[type=radio] {
display: block;
margin: auto;
z-index: 1;
}
.box {
width: 60px;
vertical-align: top;
display: inline-block;
text-align: center;
}
.stretch {
width: 100%;
display: inline-block;
}
<div id="container">
<div class="box">
<input type="radio" name="radio"/>
<label>A</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>B</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>C</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>D</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>E</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>F</label>
</div>
<div class="line"></div>
<span class="stretch"></span>
</div>
z-index will only work along with position.
Adding position to your input[type=radio] will meet your requirement.
#container {
text-align: justify;
background-color: #ff5050;
position: relative;
}
.line {
width: 100%;
height: 2px;
background-color: green;
position: absolute;
top: 5px;
z-index: 0;
}
input[type=radio] {
position:relative;
display: block;
margin: auto;
z-index: 1;
}
.box {
width: 60px;
vertical-align: top;
display: inline-block;
text-align: center;
}
.stretch {
width: 100%;
display: inline-block;
}
<div id="container">
<div class="box">
<input type="radio" name="radio"/>
<label>A</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>B</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>C</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>D</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>E</label>
</div>
<div class="box">
<input type="radio" name="radio"/>
<label>F</label>
</div>
<div class="line"></div>
<span class="stretch"></span>
</div>
Note that z-index will only apply to elements that have a position. As such, your input elements have no z-index applied to them, and resort to the default value of 0.
It gets a little complicated with hierarchy, and .box is a sibling of .line. As such, all of your .box elements are of equal z-index to your line.
To have the line behind the notes, you'll want to use a value of -1 for .line. Note that this will actually place the .line behind container, because that also defaults to 0. As such, you'll additionally want to set a value of -1 on #container.
Ultimately, you just need to ensure four things:
That .line has a z-index equal to or greater than #container
That .box has a higher z-index than .line
That input has a z-index equal to or greater than .box
That all elements with z-index also have a position
This can be seen in the following, which only sets a -1 z-index on #container and .line:
#container {
text-align: justify;
background-color: #ff5050;
position: relative;
z-index: -1;
}
.line {
width: 100%;
height: 2px;
background-color: green;
position: absolute;
top: 5px;
z-index: -1;
}
input[type=radio] {
display: block;
margin: auto;
}
.box {
width: 60px;
vertical-align: top;
display: inline-block;
text-align: center;
}
.stretch {
width: 100%;
display: inline-block;
}
<div id="container">
<div class="box">
<input type="radio" name="radio" />
<label>A</label>
</div>
<div class="box">
<input type="radio" name="radio" />
<label>B</label>
</div>
<div class="box">
<input type="radio" name="radio" />
<label>C</label>
</div>
<div class="box">
<input type="radio" name="radio" />
<label>D</label>
</div>
<div class="box">
<input type="radio" name="radio" />
<label>E</label>
</div>
<div class="box">
<input type="radio" name="radio" />
<label>F</label>
</div>
<div class="line"></div>
<span class="stretch"></span>
</div>
Hope this helps! :)

Add icon to end of radio input div

I'm attempting to create a similar UI as below using radio inputs. Most of the UI was fairly easy to recreate, the only exception is adding the arrow (icon?) to the end of the label div. I've attempted to div an arrow in and force it to the center using margins, but it's obviously not a very good solution. What's the best way to add the arrow at the end of the label?
Here's the current code
<div id='results'>
<form>
<input type="radio" name="result" value="1" id='opt-1' checked>
<label for="opt-1"><h3>Option 1</h3>
<p>Short Description of Option 1</p></label><br>
<input type="radio" name="result" value="2" id='opt-2' checked>
<label for="opt-2"><h3>Option 2</h3>
<p>Short Description of Option 2</p></label><br>
<input type="radio" name="result" value="3" id='opt-3' checked>
<label for="opt-3"><h3>Option 3</h3>
<p>Short Description of Option 3</p></label><br>
</form>
</div>
JSFiddle
EDIT:
I'm aware the JSFiddle doesn't apply the background correctly. The code does operate fine on production.
I've created a wrapper of class .list for each radio item to bind the data.
<div id='results'>
<form>
<div class="list">
<span>
<input type="radio" name="result" value="1" id='opt-1' checked>
</span>
<span class="radio-content">
<span>
<label class="mb-1" for="opt-1"><h3>Option 1</h3>
<p class="d-inline">Short Description of Option 1</p></label><br>
</span>
<span class="arrow"><</span>
</span>
</div>
<div class="list">
<span>
<input type="radio" name="result" value="1" id='opt-1' checked>
</span>
<span class="radio-content">
<span>
<label class="mb-1" for="opt-1"><h3>Option2</h3>
<p class="d-inline">Short Description of Option 2</p></label><br>
</span>
<span class="arrow"><</span>
</span>
</div>
</form>
</div>
CSS code here
.list{
display: flex;
align-items:center;
}
.mb-1{
margin-bottom: 8px;
}
.radio-content{
width:100%;
display:flex;
align-items:center;
justify-content: space-between;
}
Instead of "<" you can use the appropriate icon with the appropriate spacing
label {
background-color: #16a085;
background: linear-gradient(to right, #16a085, #66a99c);
width: 80%;
padding-left: 15px;
padding-top: 10px;
margin-bottom: 3px;
}
form > label > h3 {
margin-bottom: 1px;
}
form > label > p {
margin-top: 1px;
}
form > label h3::after {
content: '\276E';
position: absolute;
right: 0;
padding-right: 20px;
}
input[type=radio] {
display: none;
}
<div id='results'>
<form>
<input type="radio" name="result" value="1" id='opt-1' checked>
<label for="opt-1">
<h3>Option 1</h3>
<p>Short Description of Option 1</p>
</label><br>
<input type="radio" name="result" value="2" id='opt-2' checked>
<label for="opt-2">
<h3>Option 2</h3>
<p>Short Description of Option 2</p>
</label><br>
<input type="radio" name="result" value="3" id='opt-3' checked>
<label for="opt-3">
<h3>Option 3</h3>
<p>Short Description of Option 3</p>
</label><br>
</form>
</div>
So flexbox is awesome for layouts like these. It performs well and has great browser support (http://caniuse.com/#search=flexbox). IE has some issues but should be able to work around.
ul {
list-style: none;
width: 400px;
border: 1px solid #ccc;
margin: 0;
padding: 0;
}
ul li {
display: flex;
flex-direction: row;
justify-content: space-between;
border-bottom: 1px solid #ccc;
}
ul li:last-child {
border-bottom: none;
}
.title {
flex-grow: 1;
padding-top: 4px;
}
.title h3 {
margin: 0;
}
.title p {
font-size: 9px;
color: #aaa;
margin: 1px 0 0 0;
}
.icon {
padding-left: 10px;
width: 40px;
line-height: 50px;
display: inline-block;
}
.toggle-switch {
line-height: 50px;
width: 50px;
display: inline-block;
text-align: center;
}
<ul>
<li>
<span class="icon">*</span>
<div class="title">
<h3>Stops</h3>
<p>Non stop, 1 stop, 2+ stops</p>
</div>
<span class="toggle-switch">^</span>
</li>
<li>
<span class="icon">*</span>
<div class="title">
<h3>Duration</h3>
<p>Any</p>
</div>
<span class="toggle-switch">^</span>
</li>
</ul>

How can I make interior <div> boxes with form inputs display in alignment?

I'm trying to get two interior div boxes with a header and form inputs to display side by side, like
this. I can do this with empty boxes, but when I add the form inputs box2 becomes offset as can be seen here:https://jsfiddle.net/4qux053b/
I discovered that if I add three line breaks after the radio buttons in box2 they come back into alignment, but this seems like a clumsy way of fixing the problem. Here's my code:
HTML
<div id="outer">
<div id="content">
<form name="orderForm" action="handler.php" method="post">
<div class="interior">
<h4>interior box1 heading</h4>
<label><input id="cb1" type="checkbox" name="checkboxes" value="cb1" />checkbox1</label><br />
<label><input id="cb2" type="checkbox" name="checkboxes" value="cb2" />checkbox2</label><br />
<label><input id="cb3" type="checkbox" name="checkboxes" value="cb3" />checkbox3</label><br />
<label><input id="cb4" type="checkbox" name="checkboxes" value="cb4" />checkbox4</label><br />
<label><input id="cb5" type="checkbox" name="checkboxes" value="cb5" />checkbox5</label><br />
<label><input id="cb6" type="checkbox" name="checkboxes" value="cb6" />checkbox6</label><br />
</div>
<div class="interior">
<h4>interior box2 heading</h4>
<label><input id="radio1" type="radio" name="radios" value="radio1" checked />radio1</label><br />
<label><input id="radio2" type="radio" name="radios" value="radio2" />radio2</label><br />
<label><input id="radio3" type="radio" name="radios" value="radio3" />radio3</label>
</div>
</form>
</div>
CSS
body {
font-family: sans-serif;
font-size: medium;
}
h4 {
margin: 0px;
}
#outer {
width: 100%;
max-width: 1000px;
text-align: center;
padding: 20px;
border: 1px solid black;
}
#content {
width: 90%;
padding: 5%;
border: 1px solid black;
}
.interior {
display: inline-block;
width: 24%;
max-width: 300px;
min-height: 200px;
padding: 2%;
border: 1px solid black;
}
Just add vertical-align:top to your interior class
.interior {
display: inline-block;
width: 24%;
max-width: 300px;
min-height: 200px;
padding: 2%;
border: 1px solid black;
vertical-align:top;
}
https://jsfiddle.net/4qux053b/1/